@charset "UTF-8";

html[data-theme=dark] {
    --text-color: #9e9e9e;
    --bg-color: #0d1117;
    --bg-color-secondary: #161b22;
    --bg-color-tertiary: #21262c;
    --border-color: #30363d;
    --box-shadow: #282a32;
    --card-shadow: rgba(0, 0, 0, .3);
    --black: #fff;
    --grey-dark: #999;
    --grey-light: #666;
    --white: #000;
    --grey-darker: #bbb;
    --grey-lighter: #333;
    --grey14: #111;
    --bg-color-light: #161b22;
    --bg-color-back: #0d1117;
    --bg-color-float: #161b22;
    --bg-color-blur: rgba(13, 17, 23, .9);
    --bg-color-float-blur: rgba(22, 27, 34, .9);
    --text-color-light: #a8a8a8;
    --text-color-lighter: #b1b1b1;
    --text-color-bright: #c5c5c5;
    --border-color-light: #2e333a;
    --border-color-dark: #394048
}

:root {
    --theme-color: #087dbe;
    --text-color: #2c3e50;
    --bg-color: #fff;
    --bg-color-secondary: #f8f8f8;
    --bg-color-tertiary: #efeef4;
    --border-color: #eaecef;
    --box-shadow: #f0f1f2;
    --card-shadow: rgba(0, 0, 0, .15);
    --black: #000;
    --grey-dark: #666;
    --grey-light: #999;
    --white: #fff;
    --grey-darker: #333;
    --grey-lighter: #bbb;
    --grey14: #eee;
    --navbar-height: 3.75rem;
    --navbar-horizontal-padding: 1.5rem;
    --navbar-vertical-padding: .7rem;
    --navbar-mobile-height: 3.25rem;
    --navbar-mobile-horizontal-padding: 1rem;
    --navbar-mobile-vertical-padding: .5rem;
    --sidebar-width: 18rem;
    --sidebar-mobile-width: 16rem;
    --content-width: 780px;
    --home-page-width: 1160px;
    --line-numbers-width: 2.5rem;
    --color-transition: .3s ease;
    --transform-transition: .3s ease;
    --vp-bg: var(--bg-color);
    --vp-bgl: var(--bg-color-light);
    --vp-bglt: var(--bg-color-tertiary);
    --vp-c: var(--text-color);
    --vp-cl: var(--text-color-light);
    --vp-clt: var(--text-color-lighter);
    --vp-brc: var(--border-color);
    --vp-brcd: var(--border-color-dark);
    --vp-tc: var(--theme-color);
    --vp-tcl: var(--theme-color-light);
    --vp-ct: var(--color-transition);
    --vp-tt: var(--transform-transition);
    --bg-color-light: #fff;
    --bg-color-back: #f8f8f8;
    --bg-color-float: #fff;
    --bg-color-blur: rgba(255, 255, 255, .9);
    --bg-color-float-blur: rgba(255, 255, 255, .9);
    --text-color-light: #3a5169;
    --text-color-lighter: #476582;
    --text-color-bright: #6a8bad;
    --border-color-light: #eceef1;
    --border-color-dark: #cfd4db;
    --theme-color-dark: #0771ab;
    --theme-color-light: #0991dc;
    --theme-color-mask: rgba(8, 125, 190, .15)
}

:root {
    --badge-tip-color: #42b983;
    --badge-warning-color: #f4cd00;
    --badge-danger-color: #f55;
    --badge-info-color: #0295ff;
    --badge-note-color: #666
}

.vp-badge {
    display: inline-block;
    vertical-align: center;
    height: 18px;
    padding: 0 6px;
    border-radius: 3px;
    background: var(--vp-tc);
    color: var(--white);
    font-size: 14px;
    line-height: 18px;
    transition: background var(--vp-ct), color var(--vp-ct)
}

.vp-badge+.vp-badge {
    margin-inline-start: 5px
}

h1 .vp-badge,
h2 .vp-badge,
h3 .vp-badge,
h4 .vp-badge,
h5 .vp-badge,
h6 .vp-badge {
    vertical-align: top
}

.vp-badge.tip {
    background: var(--badge-tip-color)
}

.vp-badge.warning {
    background: var(--badge-warning-color)
}

.vp-badge.danger {
    background: var(--badge-danger-color)
}

.vp-badge.info {
    background: var(--badge-info-color)
}

.vp-badge.note {
    background: var(--badge-note-color)
}

.font-icon {
    display: inline-block
}

.theme-hope-content .font-icon {
    vertical-align: middle
}

@media screen {
    .sr-only {
        position: absolute;
        overflow: hidden;
        clip: rect 0, 0, 0, 0;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        border: 0
    }
}

@media print {
    .sr-only {
        display: none
    }
}

.vp-catalog-wrapper {
    margin-top: 8px;
    margin-bottom: 8px
}

.vp-catalog-wrapper.index ol {
    padding-inline-start: 0
}

.vp-catalog-wrapper.index li {
    list-style-type: none
}

.vp-catalog-wrapper.index .vp-catalogs {
    padding-inline-start: 0
}

.vp-catalog-wrapper.index .vp-catalog {
    list-style-type: none
}

.vp-catalog-wrapper.index .vp-catalog-title:before {
    content: "§" counter(catalog-item, upper-roman) " "
}

.vp-catalog-wrapper.index .vp-child-catalogs {
    counter-reset: child-catalog
}

.vp-catalog-wrapper.index .vp-child-catalog {
    counter-increment: child-catalog
}

.vp-catalog-wrapper.index .vp-child-catalog .vp-catalog-title:before {
    content: counter(catalog-item) "." counter(child-catalog) " "
}

.vp-catalog-wrapper.index .vp-sub-catalogs {
    padding-inline-start: .5rem
}

.vp-catalogs {
    margin: 0;
    counter-reset: catalog-item
}

.vp-catalogs.deep {
    padding-inline-start: 0
}

.vp-catalogs.deep .vp-catalog {
    list-style-type: none
}

.vp-catalogs .font-icon {
    vertical-align: baseline;
    margin-inline-end: .25rem
}

.vp-catalog {
    counter-increment: catalog-item
}

.vp-catalog-main-title {
    margin-top: calc(.5rem - var(--navbar-height, 3.6rem));
    margin-bottom: .5rem;
    padding-top: var(--navbar-height, 3.6rem);
    font-weight: 500;
    font-size: 1.75rem
}

.vp-catalog-main-title:first-child {
    margin-bottom: .5rem !important
}

.vp-catalog-main-title:only-child {
    margin-bottom: 0 !important
}

.vp-catalog-main-title .vp-link {
    text-decoration: none !important
}

.vp-catalog-child-title {
    margin-bottom: .5rem !important
}

.vp-catalog-child-title.has-children {
    margin-top: calc(.5rem - var(--navbar-height, 3.6rem));
    padding-top: var(--navbar-height, 3.6rem);
    border-bottom: 1px solid var(--catalog-border-color);
    font-weight: 500;
    font-size: 1.3rem;
    transition: border-color .3s
}

.vp-catalog-child-title.has-children:only-child {
    margin-bottom: 0 !important
}

.vp-catalog-child-title .vp-link {
    text-decoration: none !important
}

.vp-catalog-sub-title {
    font-weight: 500;
    font-size: 1.1rem
}

.vp-catalog-sub-title:only-child {
    margin-bottom: 0 !important
}

.vp-catalog-title {
    color: inherit;
    text-decoration: none
}

.vp-catalog-title:hover {
    color: var(--catalog-active-color)
}

.vp-child-catalogs {
    margin: 0
}

.vp-child-catalog {
    list-style-type: disc
}

.vp-sub-catalogs {
    counter-reset: sub-catalog
}

.vp-sub-catalog {
    counter-increment: sub-catalog
}

.vp-sub-catalog .vp-link:before {
    content: counter(catalog-item) "." counter(child-catalog) "." counter(sub-catalog) " "
}

.vp-sub-catalogs-wrapper {
    display: flex;
    flex-wrap: wrap
}

.vp-sub-catalog-link {
    display: inline-block;
    margin: 4px 8px;
    padding: 4px 8px;
    border-radius: 6px;
    background-color: var(--catalog-bg-secondary-color);
    line-height: 1.5;
    overflow-wrap: break-word;
    transition: background-color .3s, color .3s
}

.vp-sub-catalog-link:hover {
    background-color: var(--catalog-hover-color);
    color: var(--catalog-bg-color);
    text-decoration: none !important
}

.vp-catalog-header-anchor {
    font-size: .85em;
    float: left;
    margin-left: -1em;
    padding-right: 0;
    margin-top: .125em;
    opacity: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    text-decoration: none;
    content: "¶"
}

@media print {
    .vp-catalog-header-anchor {
        display: none
    }
}

h2:hover .vp-catalog-header-anchor,
h3:hover .vp-catalog-header-anchor {
    opacity: 1;
    text-decoration: none
}

.vp-catalog-header-anchor:focus-visible {
    opacity: 1
}

.vp-empty-catalog {
    font-size: 1.25rem;
    text-align: center
}

:root {
    --catalog-bg-color: #fff;
    --catalog-bg-secondary-color: #f8f8f8;
    --catalog-border-color: #e5e5e5;
    --catalog-active-color: #3eaf7c;
    --catalog-hover-color: #71cda3
}

.vp-back-to-top-button {
    position: fixed !important;
    bottom: 4rem;
    inset-inline-end: 1rem;
    z-index: 100;
    width: 48px;
    height: 48px;
    padding: 8px;
    border-width: 0;
    border-radius: 50%;
    background: var(--back-to-top-bg-color);
    color: var(--back-to-top-color);
    box-shadow: 2px 2px 10px 4px var(--back-to-top-shadow);
    cursor: pointer
}

@media (max-width: 959px) {
    .vp-back-to-top-button {
        transform: scale(.8);
        transform-origin: 100% 100%
    }
}

@media print {
    .vp-back-to-top-button {
        display: none
    }
}

.vp-back-to-top-button:hover {
    color: var(--back-to-top-color-hover)
}

.vp-back-to-top-button .back-to-top-icon {
    overflow: hidden;
    width: 100%;
    height: 100%;
    background: currentcolor;
    border-radius: 50%;
    -webkit-mask-image: var(--back-to-top-icon);
    mask-image: var(--back-to-top-icon);
    -webkit-mask-position: 50%;
    mask-position: 50%;
    -webkit-mask-size: cover;
    mask-size: cover
}

.vp-scroll-progress {
    position: absolute;
    right: -2px;
    bottom: -2px;
    width: 52px;
    height: 52px
}

.vp-scroll-progress svg {
    width: 100%;
    height: 100%
}

.vp-scroll-progress circle {
    opacity: .9;
    transform: rotate(-90deg);
    transform-origin: 50% 50%
}

.back-to-top-enter-active,
.back-to-top-leave-active {
    transition: opacity .3s
}

.back-to-top-enter-from,
.back-to-top-leave-to {
    opacity: 0
}

:root {
    --back-to-top-z-index: 5;
    --back-to-top-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201024%201024'%3e%3cpath%20d='M512%20843.2c-36.2%200-66.4-13.6-85.8-21.8-10.8-4.6-22.6%203.6-21.8%2015.2l7%20102c.4%206.2%207.6%209.4%2012.6%205.6l29-22c3.6-2.8%209-1.8%2011.4%202l41%2064.2c3%204.8%2010.2%204.8%2013.2%200l41-64.2c2.4-3.8%207.8-4.8%2011.4-2l29%2022c5%203.8%2012.2.6%2012.6-5.6l7-102c.8-11.6-11-20-21.8-15.2-19.6%208.2-49.6%2021.8-85.8%2021.8'/%3e%3cpath%20d='m795.4%20586.2-96-98.2C699.4%20172%20513%2032%20513%2032S324.8%20172%20324.8%20488l-96%2098.2c-3.6%203.6-5.2%209-4.4%2014.2L261.2%20824c1.8%2011.4%2014.2%2017%2023.6%2010.8L419%20744s41.4%2040%2094.2%2040%2092.2-40%2092.2-40l134.2%2090.8c9.2%206.2%2021.6.6%2023.6-10.8l37-223.8c.4-5.2-1.2-10.4-4.8-14M513%20384c-34%200-61.4-28.6-61.4-64s27.6-64%2061.4-64c34%200%2061.4%2028.6%2061.4%2064S547%20384%20513%20384'/%3e%3c/svg%3e");
    --back-to-top-bg-color: #fff;
    --back-to-top-color: #3eaf7c;
    --back-to-top-color-hover: #71cda3;
    --back-to-top-shadow: rgb(0 0 0 / 20%)
}

:root {
    --external-link-icon-color: #aaa
}

.external-link-icon {
    position: relative;
    display: inline-block;
    color: var(--external-link-icon-color);
    vertical-align: middle;
    top: -1px
}

@media print {
    .external-link-icon {
        display: none
    }
}

.external-link-icon-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

:root {
    --nprogress-color: #29d;
    --nprogress-z-index: 1031
}

#nprogress {
    pointer-events: none
}

#nprogress .bar {
    background: var(--nprogress-color);
    position: fixed;
    z-index: var(--nprogress-z-index);
    top: 0;
    left: 0;
    width: 100%;
    height: 2px
}

.giscus-wrapper.input-top .giscus {
    margin-bottom: -3rem
}

@media print {
    #vp-comment {
        display: none !important
    }
}

div[class*=language-]:hover:before {
    display: none
}

div[class*=language-]:hover .vp-copy-code-button {
    opacity: 1
}

.vp-copy-code-button {
    position: absolute;
    top: .5em;
    right: .5em;
    z-index: 5;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    border-width: 0;
    border-radius: .5rem;
    background: transparent;
    outline: none;
    opacity: 0;
    cursor: pointer;
    transition: opacity .4s
}

@media print {
    .vp-copy-code-button {
        display: none
    }
}

.vp-copy-code-button:focus,
.vp-copy-code-button.copied {
    opacity: 1
}

.vp-copy-code-button:hover,
.vp-copy-code-button.copied {
    background: var(--copy-code-hover)
}

.vp-copy-code-button.copied .vp-copy-icon {
    -webkit-mask-image: var(--code-copied-icon);
    mask-image: var(--code-copied-icon)
}

.vp-copy-code-button.copied:after {
    content: attr(data-copied);
    position: absolute;
    top: 0;
    right: calc(100% + .25rem);
    display: block;
    height: 1.25rem;
    padding: .625rem;
    border-radius: .5rem;
    background: var(--copy-code-hover);
    color: var(--copy-code-color);
    font-weight: 500;
    line-height: 1.25rem;
    white-space: nowrap
}

.vp-copy-icon {
    width: 1.25rem;
    height: 1.25rem;
    padding: .625rem;
    background: currentcolor;
    color: var(--copy-code-color);
    font-size: 1.25rem;
    -webkit-mask-image: var(--code-copy-icon);
    mask-image: var(--code-copy-icon);
    -webkit-mask-position: 50%;
    mask-position: 50%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 1em;
    mask-size: 1em
}

:root {
    --code-copy-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20height='20'%20width='20'%20stroke='rgba(128,128,128,1)'%20stroke-width='2'%3e%3cpath%20stroke-linecap='round'%20stroke-linejoin='round'%20d='M9%205H7a2%202%200%200%200-2%202v12a2%202%200%200%200%202%202h10a2%202%200%200%200%202-2V7a2%202%200%200%200-2-2h-2M9%205a2%202%200%200%200%202%202h2a2%202%200%200%200%202-2M9%205a2%202%200%200%201%202-2h2a2%202%200%200%201%202%202'%20/%3e%3c/svg%3e");
    --code-copied-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20height='20'%20width='20'%20stroke='rgba(128,128,128,1)'%20stroke-width='2'%3e%3cpath%20stroke-linecap='round'%20stroke-linejoin='round'%20d='M9%205H7a2%202%200%200%200-2%202v12a2%202%200%200%200%202%202h10a2%202%200%200%200%202-2V7a2%202%200%200%200-2-2h-2M9%205a2%202%200%200%200%202%202h2a2%202%200%200%200%202-2M9%205a2%202%200%200%201%202-2h2a2%202%200%200%201%202%202m-6%209%202%202%204-4'%20/%3e%3c/svg%3e");
    --copy-code-color: #9e9e9e;
    --copy-code-hover: rgb(0 0 0 / 50%)
}

.vp-code-tabs-nav {
    overflow-x: auto;
    margin: .85rem 0 -.85rem;
    padding: 0;
    border-radius: 6px 6px 0 0;
    background: var(--code-tabs-nav-bg-color, #3a404c);
    list-style: none;
    white-space: nowrap;
    transition: background var(--vp-ct)
}

@media print {
    .vp-code-tabs-nav {
        display: none
    }
}

@media (max-width: 419px) {
    .vp-code-tabs-nav {
        margin-inline: -1.5rem;
        border-radius: 0
    }
}

.vp-code-tab-nav {
    border-width: 0;
    position: relative;
    min-width: 3rem;
    margin: 0;
    padding: 6px 12px;
    border-radius: 6px 6px 0 0;
    background: transparent;
    color: var(--code-tabs-nav-text-color, #eee);
    font-weight: 600;
    font-size: .85em;
    line-height: 1.4;
    cursor: pointer;
    transition: background var(--vp-ct), color var(--vp-ct)
}

.vp-code-tab-nav:hover {
    background: var(--code-tabs-nav-hover-color, #434a57)
}

.vp-code-tab-nav:before,
.vp-code-tab-nav:after {
    content: " ";
    position: absolute;
    bottom: 0;
    z-index: 1;
    width: 6px;
    height: 6px
}

.vp-code-tab-nav:before {
    right: 100%
}

.vp-code-tab-nav:after {
    left: 100%
}

.vp-code-tab-nav.active {
    background: var(--code-bg-color, #282c34)
}

.vp-code-tab-nav.active:before {
    background: radial-gradient(12px at left top, transparent 50%, var(--code-bg-color, #282c34) 50%)
}

.vp-code-tab-nav.active:after {
    background: radial-gradient(12px at right top, transparent 50%, var(--code-bg-color, #282c34) 50%)
}

.vp-code-tab-nav:first-child:before {
    display: none
}

html[dir=rtl] .vp-code-tab-nav:first-child:before {
    display: block
}

html[dir=rtl] .vp-code-tab-nav:first-child:after {
    display: none
}

.vp-code-tab {
    display: none
}

@media print {
    .vp-code-tab {
        display: block
    }
}

.vp-code-tab.active {
    display: block
}

.vp-code-tab div[class*=language-] {
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

@media (max-width: 419px) {
    .vp-code-tab div[class*=language-] {
        margin: .85rem -1.5rem;
        border-radius: 0
    }
}

@media print {
    .vp-code-tab div[class*=language-] code {
        white-space: pre-wrap
    }
}

.vp-code-tab-title {
    display: none;
    font-weight: 500
}

@media print {
    .vp-code-tab-title {
        display: block
    }
}

:root {
    --balloon-border-radius: 2px;
    --balloon-color: rgba(16, 16, 16, .95);
    --balloon-text-color: #fff;
    --balloon-font-size: 12px;
    --balloon-move: 4px
}

button[aria-label][data-balloon-pos] {
    overflow: visible
}


[aria-label][data-balloon-pos]:before {
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-top-color: var(--balloon-color);
    opacity: 0;
    pointer-events: none;
    transition: all .18s ease-out .18s;
    content: "";
    position: absolute;
    z-index: 10
}

[aria-label][data-balloon-pos]:hover:before,
[aria-label][data-balloon-pos]:hover:after,
[aria-label][data-balloon-pos][data-balloon-visible]:before,
[aria-label][data-balloon-pos][data-balloon-visible]:after,
[aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:before,
[aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:after {
    opacity: 1;
    pointer-events: none
}


[aria-label][data-balloon-pos][data-balloon-break]:after {
    white-space: pre
}

[aria-label][data-balloon-pos][data-balloon-break][data-balloon-length]:after {
    white-space: pre-line;
    word-break: break-word
}

[aria-label][data-balloon-pos][data-balloon-blunt]:before,
[aria-label][data-balloon-pos][data-balloon-blunt]:after {
    transition: none
}

[aria-label][data-balloon-pos][data-balloon-pos=up]:hover:after,
[aria-label][data-balloon-pos][data-balloon-pos=up][data-balloon-visible]:after,
[aria-label][data-balloon-pos][data-balloon-pos=down]:hover:after,
[aria-label][data-balloon-pos][data-balloon-pos=down][data-balloon-visible]:after {
    transform: translate(-50%)
}

[aria-label][data-balloon-pos][data-balloon-pos=up]:hover:before,
[aria-label][data-balloon-pos][data-balloon-pos=up][data-balloon-visible]:before,
[aria-label][data-balloon-pos][data-balloon-pos=down]:hover:before,
[aria-label][data-balloon-pos][data-balloon-pos=down][data-balloon-visible]:before {
    transform: translate(-50%)
}

[aria-label][data-balloon-pos][data-balloon-pos*=-left]:after {
    left: 0
}

[aria-label][data-balloon-pos][data-balloon-pos*=-left]:before {
    left: 5px
}

[aria-label][data-balloon-pos][data-balloon-pos*=-right]:after {
    right: 0
}

[aria-label][data-balloon-pos][data-balloon-pos*=-right]:before {
    right: 5px
}

[aria-label][data-balloon-pos][data-balloon-po*=-left]:hover:after,
[aria-label][data-balloon-pos][data-balloon-po*=-left][data-balloon-visible]:after,
[aria-label][data-balloon-pos][data-balloon-pos*=-right]:hover:after,
[aria-label][data-balloon-pos][data-balloon-pos*=-right][data-balloon-visible]:after {
    transform: translate(0)
}

[aria-label][data-balloon-pos][data-balloon-po*=-left]:hover:before,
[aria-label][data-balloon-pos][data-balloon-po*=-left][data-balloon-visible]:before,
[aria-label][data-balloon-pos][data-balloon-pos*=-right]:hover:before,
[aria-label][data-balloon-pos][data-balloon-pos*=-right][data-balloon-visible]:before {
    transform: translate(0)
}

[aria-label][data-balloon-pos][data-balloon-pos^=up]:before,
[aria-label][data-balloon-pos][data-balloon-pos^=up]:after {
    bottom: 100%;
    transform-origin: top;
    transform: translateY(var(--balloon-move))
}

[aria-label][data-balloon-pos][data-balloon-pos^=up]:after {
    margin-bottom: 10px
}

[aria-label][data-balloon-pos][data-balloon-pos=up]:before,
[aria-label][data-balloon-pos][data-balloon-pos=up]:after {
    left: 50%;
    transform: translate(-50%, var(--balloon-move))
}

[aria-label][data-balloon-pos][data-balloon-pos^=down]:before,
[aria-label][data-balloon-pos][data-balloon-pos^=down]:after {
    top: 100%;
    transform: translateY(calc(var(--balloon-move) * -1))
}

[aria-label][data-balloon-pos][data-balloon-pos^=down]:after {
    margin-top: 10px
}

[aria-label][data-balloon-pos][data-balloon-pos^=down]:before {
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-bottom-color: var(--balloon-color)
}

[aria-label][data-balloon-pos][data-balloon-pos=down]:after,
[aria-label][data-balloon-pos][data-balloon-pos=down]:before {
    left: 50%;
    transform: translate(-50%, calc(var(--balloon-move) * -1))
}

[aria-label][data-balloon-pos][data-balloon-pos=left]:hover:after,
[aria-label][data-balloon-pos][data-balloon-pos=left][data-balloon-visible]:after,
[aria-label][data-balloon-pos][data-balloon-pos=right]:hover:after,
[aria-label][data-balloon-pos][data-balloon-pos=right][data-balloon-visible]:after {
    transform: translateY(-50%)
}

[aria-label][data-balloon-pos][data-balloon-pos=left]:hover:before,
[aria-label][data-balloon-pos][data-balloon-pos=left][data-balloon-visible]:before,
[aria-label][data-balloon-pos][data-balloon-pos=right]:hover:before,
[aria-label][data-balloon-pos][data-balloon-pos=right][data-balloon-visible]:before {
    transform: translateY(-50%)
}

[aria-label][data-balloon-pos][data-balloon-pos=left]:after,
[aria-label][data-balloon-pos][data-balloon-pos=left]:before {
    right: 100%;
    top: 50%;
    transform: translate(var(--balloon-move), -50%)
}

[aria-label][data-balloon-pos][data-balloon-pos=left]:after {
    margin-right: 10px
}

[aria-label][data-balloon-pos][data-balloon-pos=left]:before {
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-left-color: var(--balloon-color)
}

[aria-label][data-balloon-pos][data-balloon-pos=right]:after,
[aria-label][data-balloon-pos][data-balloon-pos=right]:before {
    left: 100%;
    top: 50%;
    transform: translate(calc(var(--balloon-move) * -1), -50%)
}

[aria-label][data-balloon-pos][data-balloon-pos=right]:after {
    margin-left: 10px
}

[aria-label][data-balloon-pos][data-balloon-pos=right]:before {
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-right-color: var(--balloon-color)
}

[aria-label][data-balloon-pos][data-balloon-length]:after {
    white-space: normal
}

[aria-label][data-balloon-pos][data-balloon-length=small]:after {
    width: 80px
}

[aria-label][data-balloon-pos][data-balloon-length=medium]:after {
    width: 150px
}

[aria-label][data-balloon-pos][data-balloon-length=large]:after {
    width: 260px
}

[aria-label][data-balloon-pos][data-balloon-length=xlarge]:after {
    width: 380px
}

@media screen and (max-width: 768px) {
    [aria-label][data-balloon-pos][data-balloon-length=xlarge]:after {
        width: 90vw
    }
}

[aria-label][data-balloon-pos][data-balloon-length=fit]:after {
    width: 100%
}

:root {
    --code-demo-header-bg-color: #eee
}

html[data-theme=dark] {
    --code-demo-header-bg-color: #333
}

.vp-code-demo {
    margin: 8px 0;
    border: 1px solid var(--vp-brc);
    border-radius: 8px;
    transition: all .2s
}

.vp-code-demo:hover {
    box-shadow: 0 2px 12px var(--card-shadow)
}

.vp-code-demo-header {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px;
    border-radius: 8px 8px 0 0;
    background: var(--code-demo-header-bg-color);
    text-align: start
}

.vp-code-demo-header .codepen-button,
.vp-code-demo-header .jsfiddle-button {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    position: relative;
    box-sizing: content-box;
    width: 1.25rem;
    height: 1.25rem;
    margin: 0 4px;
    padding: 4px;
    border-radius: 50%;
    background: #ccc;
    outline: none
}

@media print {

    .vp-code-demo-header .codepen-button,
    .vp-code-demo-header .jsfiddle-button {
        display: none
    }
}

html[data-theme=dark] .vp-code-demo-header .codepen-button,
html[data-theme=dark] .vp-code-demo-header .jsfiddle-button {
    background: #555
}

.vp-code-demo-header .codepen-button svg,
.vp-code-demo-header .jsfiddle-button svg {
    width: 1.25rem;
    height: 1.25rem;
    fill: #777
}

html[data-theme=dark] .vp-code-demo-header .codepen-button svg,
html[data-theme=dark] .vp-code-demo-header .jsfiddle-button svg {
    fill: #aaa
}

.vp-code-demo-header .codepen-button:hover,
.vp-code-demo-header .jsfiddle-button:hover {
    background: #aaa
}

html[data-theme=dark] .vp-code-demo-header .codepen-button:hover,
html[data-theme=dark] .vp-code-demo-header .jsfiddle-button:hover {
    background: #777
}

.vp-code-demo-header .codepen-button:hover svg,
.vp-code-demo-header .jsfiddle-button:hover svg {
    fill: #333
}

html[data-theme=dark] .vp-code-demo-header .codepen-button:hover svg,
html[data-theme=dark] .vp-code-demo-header .jsfiddle-button:hover svg {
    fill: #fff
}

.vp-code-demo-toggle-button {
    border-width: 0;
    background: transparent;
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    line-height: normal;
    transition: all .3s;
    position: relative;
    margin: 8px 12px 8px 8px;
    padding: 0;
    border-color: transparent;
    border-radius: 50%;
    background-color: #ccc;
    outline: none;
    font-size: 24px;
    cursor: pointer
}

html[data-theme=dark] .vp-code-demo-toggle-button {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.vp-code-demo-toggle-button.down {
    transform: rotate(180deg)
}

html[dir=rtl] .vp-code-demo-toggle-button.down {
    transform: rotate(-180deg)
}

.vp-code-demo-toggle-button.end {
    transform: rotate(90deg)
}

html[dir=rtl] .vp-code-demo-toggle-button.end,
.vp-code-demo-toggle-button.start {
    transform: rotate(-90deg)
}

html[dir=rtl] .vp-code-demo-toggle-button.start {
    transform: rotate(90deg)
}

@media print {
    .vp-code-demo-toggle-button {
        display: none
    }
}

html[data-theme=dark] .vp-code-demo-toggle-button {
    background-color: #555
}

.vp-code-demo-toggle-button:hover {
    background-color: #aaa
}

html[data-theme=dark] .vp-code-demo-toggle-button:hover {
    background-color: #777
}

.vp-code-demo-title {
    display: inline-block;
    vertical-align: top;
    flex: 1;
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 2.5rem
}

.vp-code-demo-title:first-child {
    margin-inline-start: .5rem
}

.vp-code-demo-loading {
    color: var(--vp-tc)
}

.vp-code-demo-display {
    position: relative;
    overflow: auto;
    max-height: 400px;
    padding: 20px;
    border-bottom: 1px solid var(--vp-brc)
}

@media print {
    .vp-code-demo-display {
        page-break-inside: avoid
    }
}

.vp-code-demo-code-wrapper {
    overflow: hidden;
    transition: height .5s
}

@media print {
    .vp-code-demo-code-wrapper {
        height: auto !important
    }
}

.vp-code-demo-codes>p {
    margin: .75rem
}

.vp-code-demo-codes>div[class*=language-] {
    border-radius: 0
}

@media (max-width: 419px) {
    .vp-code-demo-codes>div[class*=language-] {
        margin: .8rem 0
    }

    .vp-code-demo-codes>div[class*=language-].line-numbers-mode:after {
        display: none
    }

    .vp-code-demo-codes>div[class*=language-] .line-numbers-wrapper {
        display: none
    }

    .vp-code-demo-codes>div[class*=language-] pre[class*=language-] {
        padding: 1.25rem 1.25rem 1rem
    }
}

.vp-code-demo-codes>div[class*=language-]:first-child pre {
    margin-top: 0 !important
}

.vp-code-demo-codes>div[class*=language-].language-json {
    display: none
}

.vp-code-demo-codes>div[class*=language-].line-numbers-mode:after {
    border-radius: 0
}

:root {
    --md-demo-header-bg-color: #eee
}

html[data-theme=dark] {
    --md-demo-header-bg-color: #333
}

.vp-md-demo {
    margin: 8px -8px;
    border: 1px solid var(--vp-brc);
    border-radius: 8px;
    transition: all .2s
}

.vp-md-demo:hover {
    box-shadow: 0 2px 12px var(--card-shadow)
}

.vp-md-demo-header {
    position: relative;
    padding: 8px 12px;
    border-radius: 8px 8px 0 0;
    background: var(--code-demo-header-bg-color);
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 2.5rem;
    text-align: start
}

.vp-md-demo-toggle-button {
    border-width: 0;
    background: transparent;
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    line-height: normal;
    transition: all .3s;
    position: relative;
    margin: 8px 12px 8px 8px;
    padding: 0;
    border-color: transparent;
    border-radius: 50%;
    background-color: #ccc;
    outline: none;
    font-size: 24px;
    cursor: pointer
}

html[data-theme=dark] .vp-md-demo-toggle-button {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.vp-md-demo-toggle-button.down {
    transform: rotate(180deg)
}

html[dir=rtl] .vp-md-demo-toggle-button.down {
    transform: rotate(-180deg)
}

.vp-md-demo-toggle-button.end {
    transform: rotate(90deg)
}

html[dir=rtl] .vp-md-demo-toggle-button.end,
.vp-md-demo-toggle-button.start {
    transform: rotate(-90deg)
}

html[dir=rtl] .vp-md-demo-toggle-button.start {
    transform: rotate(90deg)
}

@media print {
    .vp-md-demo-toggle-button {
        display: none
    }
}

html[data-theme=dark] .vp-md-demo-toggle-button {
    background-color: #555
}

.vp-md-demo-toggle-button:hover {
    background-color: #aaa
}

html[data-theme=dark] .vp-md-demo-toggle-button:hover {
    background-color: #777
}

.vp-md-demo-display {
    position: relative;
    overflow: auto;
    padding: 8px
}

@media print {
    .vp-md-demo-display {
        page-break-inside: avoid
    }
}

.vp-md-demo-code-wrapper {
    overflow: hidden;
    transition: height .5s
}

@media print {
    .vp-md-demo-code-wrapper {
        height: auto !important
    }
}

.vp-md-demo-codes>div[class*=language-] {
    border-radius: 0
}

@media (max-width: 419px) {
    .vp-md-demo-codes>div[class*=language-] {
        margin: .8rem 0
    }

    .vp-md-demo-codes>div[class*=language-].line-numbers-mode:after {
        display: none
    }

    .vp-md-demo-codes>div[class*=language-] .line-numbers-wrapper {
        display: none
    }

    .vp-md-demo-codes>div[class*=language-] pre[class*=language-] {
        padding: 1.25rem 1.25rem 1rem
    }
}

.vp-md-demo-codes>div[class*=language-] pre {
    margin-block: 0 !important
}

.vp-md-demo-codes>div[class*=language-].line-numbers-mode:after {
    border-radius: 0
}

.theme-hope-content figure {
    position: relative;
    display: flex;
    flex-direction: column;
    width: auto;
    margin: 1rem auto;
    text-align: center;
    transition: transform var(--vp-tt)
}

.theme-hope-content figure img {
    overflow: hidden;
    margin: 0 auto;
    border-radius: 8px
}

.theme-hope-content figure img[tabindex]:hover,
.theme-hope-content figure img[tabindex]:focus {
    box-shadow: 2px 2px 10px 0 var(--card-shadow)
}

@media print {

    .theme-hope-content figure>a[href^="http://"]:after,
    .theme-hope-content figure>a[href^="https://"]:after {
        content: ""
    }
}

.theme-hope-content figure>a .external-link-icon {
    display: none
}

.theme-hope-content figure figcaption {
    display: inline-block;
    margin: 6px auto;
    font-size: .8rem
}

.footnote-item {
    margin-top: calc(0rem - var(--navbar-height, 3.6rem));
    padding-top: calc(var(--navbar-height, 3.6rem) + .5rem)
}


.footnote-ref {
    position: relative
}

.footnote-anchor {
    position: absolute;
    top: calc(-.5rem - var(--navbar-height, 3.6rem))
}

:root {
    --important-title-color: #230555;
    --important-bg-color: #f4eefe;
    --important-border-color: #a371f7;
    --important-code-bg-color: rgb(163 113 247 / 10%);
    --info-title-color: #193c47;
    --info-bg-color: #eef9fd;
    --info-border-color: #4cb3d4;
    --info-code-bg-color: rgb(76 179 212 / 10%);
    --note-title-color: #474748;
    --note-bg-color: #fdfdfe;
    --note-border-color: #ccc;
    --note-code-bg-color: rgb(212 213 216 / 20%);
    --tip-title-color: #003100;
    --tip-bg-color: #e6f6e6;
    --tip-border-color: #009400;
    --tip-code-bg-color: rgb(0 148 0 / 15%);
    --warning-title-color: #4d3800;
    --warning-bg-color: #fff8e6;
    --warning-border-color: #e6a700;
    --warning-code-bg-color: rgb(230 167 0 / 15%);
    --caution-title-color: #4b1113;
    --caution-bg-color: #ffebec;
    --caution-border-color: #e13238;
    --caution-code-bg-color: rgb(225 50 56 / 15%);
    --detail-bg-color: #eee;
    --detail-text-color: inherit;
    --detail-code-bg-color: rgb(127 127 127 / 15%)
}

html[data-theme=dark] {
    --important-title-color: #f4eefe;
    --important-bg-color: #230555;
    --info-title-color: #eef9fd;
    --info-bg-color: #193c47;
    --note-title-color: #fdfdfe;
    --note-bg-color: #474748;
    --tip-title-color: #e6f6e6;
    --tip-bg-color: #003100;
    --warning-title-color: #fff8e6;
    --warning-bg-color: #4d3800;
    --caution-title-color: #ffebec;
    --caution-bg-color: #4b1113;
    --detail-bg-color: #333;
    --detail-text-color: #a8a8a8
}

.hint-container {
    position: relative;
    transition: background var(--vp-ct), border-color var(--vp-ct), color var(--vp-ct)
}

@media print {
    .hint-container {
        page-break-inside: avoid
    }
}

.hint-container .hint-container-title {
    position: relative;
    font-weight: 600;
    line-height: 1.25
}

.hint-container.important,
.hint-container.info,
.hint-container.note,
.hint-container.tip,
.hint-container.warning,
.hint-container.caution {
    margin: 1rem 0;
    padding: .25rem 1rem;
    border-inline-start-width: .3rem;
    border-inline-start-style: solid;
    border-radius: .5rem;
    color: inherit
}

@media (max-width: 419px) {

    .hint-container.important,
    .hint-container.info,
    .hint-container.note,
    .hint-container.tip,
    .hint-container.warning,
    .hint-container.caution {
        margin-inline: -.75rem
    }
}

.hint-container.important .hint-container-title,
.hint-container.info .hint-container-title,
.hint-container.note .hint-container-title,
.hint-container.tip .hint-container-title,
.hint-container.warning .hint-container-title,
.hint-container.caution .hint-container-title {
    padding-inline-start: 1.75rem
}

@media print {

    .hint-container.important .hint-container-title,
    .hint-container.info .hint-container-title,
    .hint-container.note .hint-container-title,
    .hint-container.tip .hint-container-title,
    .hint-container.warning .hint-container-title,
    .hint-container.caution .hint-container-title {
        padding-inline-start: 0
    }
}

.hint-container.important .hint-container-title:before,
.hint-container.info .hint-container-title:before,
.hint-container.note .hint-container-title:before,
.hint-container.tip .hint-container-title:before,
.hint-container.warning .hint-container-title::before,
.hint-container.caution .hint-container-title:before {
    content: " ";
    position: absolute;
    top: calc(50% - .6125em);
    inset-inline-start: 0;
    width: 1.25em;
    height: 1.25em;
    background-position: left;
    background-repeat: no-repeat
}

@media print {

    .hint-container.important .hint-container-title:before,
    .hint-container.info .hint-container-title:before,
    .hint-container.note .hint-container-title:before,
    .hint-container.tip .hint-container-title:before,
    .hint-container.warning .hint-container-title:before,
    .hint-container.caution .hint-container-title:before {
        display: none
    }
}

.hint-container.important p,
.hint-container.info p,
.hint-container.note p,
.hint-container.tip p,
.hint-container.warning p,
.hint-container.caution p {
    line-height: 1.5
}

.hint-container.important a,
.hint-container.info a,
.hint-container.note a,
.hint-container.tip a,
.hint-container.warning a,
.hint-container.caution a {
    color: var(--vp-tc)
}

.hint-container.important {
    border-color: var(--important-border-color);
    background: var(--important-bg-color)
}

.hint-container.important>.hint-container-title {
    color: var(--important-title-color)
}

.hint-container.important>.hint-container-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath d='M512 981.333a84.992 84.992 0 0 1-84.907-84.906h169.814A84.992 84.992 0 0 1 512 981.333zm384-128H128v-42.666l85.333-85.334v-256A298.325 298.325 0 0 1 448 177.92V128a64 64 0 0 1 128 0v49.92a298.325 298.325 0 0 1 234.667 291.413v256L896 810.667v42.666zm-426.667-256v85.334h85.334v-85.334h-85.334zm0-256V512h85.334V341.333h-85.334z' fill='%23a371f7'/%3E%3C/svg%3E")
}

.hint-container.important code {
    background: var(--important-code-bg-color)
}

.hint-container.info {
    border-color: var(--info-border-color);
    background: var(--info-bg-color)
}

.hint-container.info>.hint-container-title {
    color: var(--info-title-color)
}

.hint-container.info>.hint-container-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10-4.477 10-10 10zm-1-11v6h2v-6h-2zm0-4v2h2V7h-2z' fill='%234cb3d4'/%3E%3C/svg%3E")
}

.hint-container.info code {
    background: var(--info-code-bg-color)
}

.hint-container.note {
    border-color: var(--note-border-color);
    background: var(--note-bg-color)
}

.hint-container.note>.hint-container-title {
    color: var(--note-title-color)
}

.hint-container.note>.hint-container-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10-4.477 10-10 10zm-1-11v6h2v-6h-2zm0-4v2h2V7h-2z' fill='%23ccc'/%3E%3C/svg%3E")
}

.hint-container.note code {
    background: var(--note-code-bg-color)
}

.hint-container.tip {
    border-color: var(--tip-border-color);
    background: var(--tip-bg-color)
}

.hint-container.tip>.hint-container-title {
    color: var(--tip-title-color)
}

.hint-container.tip>.hint-container-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23009400' d='M7.941 18c-.297-1.273-1.637-2.314-2.187-3a8 8 0 1 1 12.49.002c-.55.685-1.888 1.726-2.185 2.998H7.94zM16 20v1a2 2 0 0 1-2 2h-4a2 2 0 0 1-2-2v-1h8zm-3-9.995V6l-4.5 6.005H11v4l4.5-6H13z'/%3E%3C/svg%3E")
}

.hint-container.tip code {
    background: var(--tip-code-bg-color)
}

.hint-container.warning {
    border-color: var(--warning-border-color);
    background: var(--warning-bg-color)
}

.hint-container.warning>.hint-container-title {
    color: var(--warning-title-color)
}

.hint-container.warning>.hint-container-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath d='M576.286 752.57v-95.425q0-7.031-4.771-11.802t-11.3-4.772h-96.43q-6.528 0-11.3 4.772t-4.77 11.802v95.424q0 7.031 4.77 11.803t11.3 4.77h96.43q6.528 0 11.3-4.77t4.77-11.803zm-1.005-187.836 9.04-230.524q0-6.027-5.022-9.543-6.529-5.524-12.053-5.524H456.754q-5.524 0-12.053 5.524-5.022 3.516-5.022 10.547l8.538 229.52q0 5.023 5.022 8.287t12.053 3.265h92.913q7.032 0 11.803-3.265t5.273-8.287zM568.25 95.65l385.714 707.142q17.578 31.641-1.004 63.282-8.538 14.564-23.354 23.102t-31.892 8.538H126.286q-17.076 0-31.892-8.538T71.04 866.074q-18.582-31.641-1.004-63.282L455.75 95.65q8.538-15.57 23.605-24.61T512 62t32.645 9.04 23.605 24.61z' fill='%23e6a700'/%3E%3C/svg%3E")
}

.hint-container.warning code {
    background: var(--warning-code-bg-color)
}

.hint-container.caution {
    border-color: var(--caution-border-color);
    background: var(--caution-bg-color)
}

.hint-container.caution>.hint-container-title {
    color: var(--caution-title-color)
}

.hint-container.caution>.hint-container-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c5.523 0 10 4.477 10 10v3.764a2 2 0 0 1-1.106 1.789L18 19v1a3 3 0 0 1-2.824 2.995L14.95 23a2.5 2.5 0 0 0 .044-.33L15 22.5V22a2 2 0 0 0-1.85-1.995L13 20h-2a2 2 0 0 0-1.995 1.85L9 22v.5c0 .171.017.339.05.5H9a3 3 0 0 1-3-3v-1l-2.894-1.447A2 2 0 0 1 2 15.763V12C2 6.477 6.477 2 12 2zm-4 9a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm8 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4z' fill='%23e13238'/%3E%3C/svg%3E")
}

.hint-container.caution code {
    background: var(--caution-code-bg-color)
}

.hint-container.details {
    position: relative;
    display: block;
    margin: 1rem 0;
    padding: 1.5rem;
    border-radius: .5rem;
    background: var(--detail-bg-color);
    color: var(--detail-text-color);
    transition: background var(--vp-tt), color var(--vp-tt)
}

@media (max-width: 419px) {
    .hint-container.details {
        margin-inline: -.75rem
    }
}

.hint-container.details h4 {
    margin-top: 0
}

.hint-container.details figure:last-child,
.hint-container.details p:last-child {
    margin-bottom: 0;
    padding-bottom: 0
}

.hint-container.details a {
    color: var(--vp-tc)
}

.hint-container.details code {
    background: var(--detail-code-bg-color)
}

.hint-container.details summary {
    position: relative;
    margin: -1.5rem;
    padding-block: 1.5rem;
    padding-inline: 4rem 1.5rem;
    list-style: none;
    cursor: pointer
}

.hint-container.details summary::-webkit-details-marker {
    display: none
}

.hint-container.details summary::marker {
    color: transparent;
    font-size: 0
}

.hint-container.details summary:before,
.hint-container.details summary:after {
    content: " ";
    position: absolute;
    top: calc(50% - .75rem);
    inset-inline-start: 1.5rem;
    width: 1.5rem;
    height: 1.5rem
}

.hint-container.details summary:before {
    border-radius: 50%;
    background: #ccc;
    transition: background var(--vp-ct), transform var(--vp-tt)
}

html[data-theme=dark] .hint-container.details summary:before {
    background: #555
}

.hint-container.details summary:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    line-height: normal;
    transition: transform var(--vp-tt);
    transform: rotate(90deg)
}

html[data-theme=dark] .hint-container.details summary:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.hint-container.details[open]>summary {
    margin-bottom: .5em
}

.hint-container.details[open]>summary:after {
    transform: rotate(180deg)
}

html[data-theme=light] figure:has(img[data-mode=darkmode-only]),
html[data-theme=light] img[data-mode=darkmode-only] {
    display: none !important
}

html[data-theme=dark] figure:has(img[data-mode=lightmode-only]),
html[data-theme=dark] img[data-mode=lightmode-only] {
    display: none !important
}

mjx-container[jax=SVG] {
    direction: ltr
}

mjx-container[jax=SVG]>svg {
    overflow: visible;
    min-height: 1px;
    min-width: 1px
}

mjx-container[jax=SVG]>svg a {
    fill: #00f;
    stroke: #00f
}

mjx-assistive-mml {
    position: absolute !important;
    top: 0;
    left: 0;
    clip: rect(1px, 1px, 1px, 1px);
    padding: 1px 0 0 !important;
    border: 0px !important;
    display: block !important;
    width: auto !important;
    overflow: hidden !important;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

mjx-assistive-mml[display=block] {
    width: 100% !important
}

mjx-container[jax=SVG][display=true] {
    display: block;
    text-align: center;
    margin: 1em 0
}

mjx-container[jax=SVG][display=true][width=full] {
    display: flex
}

mjx-container[jax=SVG][justify=left] {
    text-align: left
}

mjx-container[jax=SVG][justify=right] {
    text-align: right
}

g[data-mml-node=merror]>g {
    fill: red;
    stroke: red
}

g[data-mml-node=merror]>rect[data-background] {
    fill: #ff0;
    stroke: none
}

g[data-mml-node=mtable]>line[data-line],
svg[data-table]>g>line[data-line] {
    stroke-width: 70px;
    fill: none
}

g[data-mml-node=mtable]>rect[data-frame],
svg[data-table]>g>rect[data-frame] {
    stroke-width: 70px;
    fill: none
}

g[data-mml-node=mtable]>.mjx-dashed,
svg[data-table]>g>.mjx-dashed {
    stroke-dasharray: 140
}

g[data-mml-node=mtable]>.mjx-dotted,
svg[data-table]>g>.mjx-dotted {
    stroke-linecap: round;
    stroke-dasharray: 0, 140
}

g[data-mml-node=mtable]>g>svg {
    overflow: visible
}

[jax=SVG] mjx-tool {
    display: inline-block;
    position: relative;
    width: 0;
    height: 0
}

[jax=SVG] mjx-tool>mjx-tip {
    position: absolute;
    top: 0;
    left: 0
}

mjx-tool>mjx-tip {
    display: inline-block;
    padding: .2em;
    border: 1px solid #888;
    font-size: 70%;
    background-color: #f8f8f8;
    color: #000;
    box-shadow: 2px 2px 5px #aaa
}

g[data-mml-node=maction][data-toggle] {
    cursor: pointer
}

mjx-status {
    display: block;
    position: fixed;
    left: 1em;
    bottom: 1em;
    min-width: 25%;
    padding: .2em .4em;
    border: 1px solid #888;
    font-size: 90%;
    background-color: #f8f8f8;
    color: #000
}

foreignObject[data-mjx-xml] {
    font-family: initial;
    line-height: normal;
    overflow: visible
}

mjx-container[jax=SVG] path[data-c],
mjx-container[jax=SVG] use[data-c] {
    stroke-width: 3
}

mjx-container {
    overflow-x: auto
}

:root {
    --tab-bg-color: var(--vp-bg);
    --tab-nav-text-color: var(--vp-c);
    --tab-nav-bg-color: #e0e0e0;
    --tab-nav-hover-color: #eee
}

html[data-theme=dark] {
    --tab-nav-bg-color: #34343f;
    --tab-nav-hover-color: #2d2d38
}

.vp-tabs {
    margin: 1.5rem 0;
    border: 2px solid var(--vp-brc);
    border-radius: 8px
}

@media (max-width: 419px) {
    .theme-hope-content>.vp-tabs {
        margin-inline: -1.5rem;
        border-radius: 0
    }
}

.vp-tabs-nav {
    overflow-x: auto;
    margin: 0;
    padding: 0;
    border-radius: 8px 8px 0 0;
    background: var(--tab-nav-bg-color);
    list-style: none;
    white-space: nowrap;
    transition: background var(--vp-ct)
}

@media print {
    .vp-tabs-nav {
        display: none
    }
}

@media (max-width: 419px) {
    .vp-tabs-nav {
        border-radius: 0
    }
}

.vp-tab-nav {
    border-width: 0;
    position: relative;
    min-width: 4rem;
    margin: 0;
    padding: .5em 1em;
    border-radius: 8px 8px 0 0;
    background: transparent;
    color: var(--tab-nav-text-color);
    font-weight: 600;
    font-size: .85em;
    line-height: 1.75;
    cursor: pointer;
    transition: background var(--vp-ct), color var(--vp-ct)
}

.vp-tab-nav:hover {
    background: var(--tab-nav-hover-color)
}

.vp-tab-nav:before,
.vp-tab-nav:after {
    content: " ";
    position: absolute;
    bottom: 0;
    z-index: 1;
    width: 8px;
    height: 8px
}

.vp-tab-nav:before {
    right: 100%
}

.vp-tab-nav:after {
    left: 100%
}

.vp-tab-nav.active {
    background: var(--tab-bg-color)
}

.vp-tab-nav.active:before {
    background: radial-gradient(16px at left top, transparent 50%, var(--tab-bg-color) 50%)
}

.vp-tab-nav.active:after {
    background: radial-gradient(16px at right top, transparent 50%, var(--tab-bg-color) 50%)
}

.vp-tab-nav:first-child:before {
    display: none
}

.vp-tab {
    display: none;
    padding: 1rem .75rem;
    background: var(--tab-bg-color);
    transition: background var(--vp-ct)
}

@media print {
    .vp-tab {
        display: block;
        padding: .5rem
    }
}

.vp-tab.active {
    display: block
}

.vp-tab:nth-child(n+2) .vp-tab-title {
    border-top: none
}

.vp-tab-title {
    display: none;
    padding: .25rem 0;
    border-top: 1px solid var(--vp-brc);
    font-weight: 500
}

@media print {
    .vp-tab-title {
        display: block
    }
}

.task-list-container {
    padding-inline-start: 0;
    list-style-position: inside
}

.task-list-container .task-list-container {
    padding-inline-start: 1.5em
}

.task-list-item {
    list-style: none
}

.task-list-item-checkbox {
    position: relative;
    cursor: pointer
}

.task-list-item-checkbox:after {
    content: " ";
    position: absolute;
    top: 0;
    display: inline-block;
    box-sizing: border-box;
    width: 1em;
    height: 1em;
    padding-inline-start: 0;
    border: 1px solid #ddd;
    border-radius: 2px;
    background: #fff;
    text-align: center;
    visibility: visible;
    transition: background var(--vp-ct), border-color var(--vp-ct)
}

@media print {
    .task-list-item-checkbox:after {
        border-color: var(--vp-c)
    }
}

html[data-theme=dark] .task-list-item-checkbox:after {
    border-color: #666;
    background: #333
}

.task-list-item-checkbox:checked:after {
    content: "";
    border-color: var(--vp-tc);
    background: var(--vp-tc)
}

@media print {
    .task-list-item-checkbox:checked:after {
        border-color: var(--vp-c);
        background: transparent
    }
}

html[data-theme=dark] .task-list-item-checkbox:checked:after {
    border-color: var(--vp-tc);
    background: var(--vp-tc)
}

.task-list-item-checkbox:checked:before {
    content: "";
    position: absolute;
    top: .1em;
    inset-inline-start: .4em;
    z-index: 1;
    width: .2em;
    height: .5em;
    border: solid var(--white);
    border-width: 0 .15em .15em 0;
    transform: rotate(45deg)
}

@media print {
    .task-list-item-checkbox:checked:before {
        border-color: var(--vp-c)
    }
}

/*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */
.pswp {
    --pswp-bg: #000;
    --pswp-placeholder-bg: #222;
    --pswp-root-z-index: 100000;
    --pswp-preloader-color: rgba(79, 79, 79, .4);
    --pswp-preloader-color-secondary: rgba(255, 255, 255, .9);
    --pswp-icon-color: #fff;
    --pswp-icon-color-secondary: #4f4f4f;
    --pswp-icon-stroke-color: #4f4f4f;
    --pswp-icon-stroke-width: 2px;
    --pswp-error-text-color: var(--pswp-icon-color)
}

.pswp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: var(--pswp-root-z-index);
    display: none;
    touch-action: none;
    outline: 0;
    opacity: .003;
    contain: layout style size;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.pswp:focus {
    outline: 0
}

.pswp * {
    box-sizing: border-box
}

.pswp img {
    max-width: none
}

.pswp--open {
    display: block
}

.pswp,
.pswp__bg {
    transform: translateZ(0);
    will-change: opacity
}

.pswp__bg {
    opacity: .005;
    background: var(--pswp-bg)
}

.pswp,
.pswp__scroll-wrap {
    overflow: hidden
}

.pswp__scroll-wrap,
.pswp__bg,
.pswp__container,
.pswp__item,
.pswp__content,
.pswp__img,
.pswp__zoom-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.pswp__img,
.pswp__zoom-wrap {
    width: auto;
    height: auto
}

.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img {
    cursor: zoom-in
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img {
    cursor: move;
    cursor: grab
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active {
    cursor: grabbing
}

.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,
.pswp__img {
    cursor: zoom-out
}

.pswp__container,
.pswp__img,
.pswp__button,
.pswp__counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.pswp__item {
    z-index: 1;
    overflow: hidden
}

.pswp__hidden {
    display: none !important
}

.pswp__content {
    pointer-events: none
}

.pswp__content>* {
    pointer-events: auto
}

.pswp__error-msg-container {
    display: grid
}

.pswp__error-msg {
    margin: auto;
    font-size: 1em;
    line-height: 1;
    color: var(--pswp-error-text-color)
}

.pswp .pswp__hide-on-close {
    opacity: .005;
    will-change: opacity;
    transition: opacity var(--pswp-transition-duration) cubic-bezier(.4, 0, .22, 1);
    z-index: 10;
    pointer-events: none
}

.pswp--ui-visible .pswp__hide-on-close {
    opacity: 1;
    pointer-events: auto
}

.pswp__button {
    position: relative;
    display: block;
    width: 50px;
    height: 60px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    cursor: pointer;
    background: none;
    border: 0;
    box-shadow: none;
    opacity: .85;
    -webkit-appearance: none;
    appearance: none;
    -webkit-touch-callout: none
}

.pswp__button:hover,
.pswp__button:active,
.pswp__button:focus {
    transition: none;
    padding: 0;
    background: none;
    border: 0;
    box-shadow: none;
    opacity: 1
}

.pswp__button:disabled {
    opacity: .3;
    cursor: auto
}

.pswp__icn {
    fill: var(--pswp-icon-color);
    color: var(--pswp-icon-color-secondary)
}

.pswp__icn {
    position: absolute;
    top: 14px;
    left: 9px;
    width: 32px;
    height: 32px;
    overflow: hidden;
    pointer-events: none
}

.pswp__icn-shadow {
    stroke: var(--pswp-icon-stroke-color);
    stroke-width: var(--pswp-icon-stroke-width);
    fill: none
}

.pswp__icn:focus {
    outline: 0
}

div.pswp__img--placeholder,
.pswp__img--with-bg {
    background: var(--pswp-placeholder-bg)
}

.pswp__top-bar {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 60px;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    z-index: 10;
    pointer-events: none !important
}

.pswp__top-bar>* {
    pointer-events: auto;
    will-change: opacity
}

.pswp__button--close {
    margin-right: 6px
}

.pswp__button--arrow {
    position: absolute;
    width: 75px;
    height: 100px;
    top: 50%;
    margin-top: -50px
}

.pswp__button--arrow:disabled {
    display: none;
    cursor: default
}

.pswp__button--arrow .pswp__icn {
    top: 50%;
    margin-top: -30px;
    width: 60px;
    height: 60px;
    background: none;
    border-radius: 0
}

.pswp--one-slide .pswp__button--arrow {
    display: none
}

.pswp--touch .pswp__button--arrow {
    visibility: hidden
}

.pswp--has_mouse .pswp__button--arrow {
    visibility: visible
}

.pswp__button--arrow--prev {
    right: auto;
    left: 0
}

.pswp__button--arrow--next {
    right: 0
}

.pswp__button--arrow--next .pswp__icn {
    left: auto;
    right: 14px;
    transform: scaleX(-1)
}

.pswp__button--zoom {
    display: none
}

.pswp--zoom-allowed .pswp__button--zoom {
    display: block
}

.pswp--zoomed-in .pswp__zoom-icn-bar-v {
    display: none
}

.pswp__preloader {
    position: relative;
    overflow: hidden;
    width: 50px;
    height: 60px;
    margin-right: auto
}

.pswp__preloader .pswp__icn {
    opacity: 0;
    transition: opacity .2s linear;
    animation: pswp-clockwise .6s linear infinite
}

.pswp__preloader--active .pswp__icn {
    opacity: .85
}

@keyframes pswp-clockwise {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

.pswp__counter {
    height: 30px;
    margin-top: 15px;
    margin-inline-start: 20px;
    font-size: 14px;
    line-height: 30px;
    color: var(--pswp-icon-color);
    text-shadow: 1px 1px 3px var(--pswp-icon-color-secondary);
    opacity: .85
}

.pswp--one-slide .pswp__counter {
    display: none
}

.photo-swipe-loading {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.photo-swipe-bullets-indicator {
    position: absolute;
    bottom: 30px;
    left: 50%;
    display: flex;
    flex-direction: row;
    align-items: center;
    transform: translate(-50%)
}

.photo-swipe-bullet {
    width: 12px;
    height: 6px;
    margin: 0 5px;
    border-radius: 3px;
    background: var(--photo-swipe-bullet);
    transition: width .3s, color .3s
}

.photo-swipe-bullet.active {
    width: 30px;
    background: var(--photo-swipe-bullet-active)
}

:root {
    --photo-swipe-bullet: #fff;
    --photo-swipe-bullet-active: #3eaf7c
}

.vp-footer-wrapper {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-evenly;
    padding-block: .75rem;
    padding-inline: calc(var(--sidebar-space) + 2rem) 2rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-color);
    color: var(--grey-dark);
    text-align: center;
    transition: border-top-color var(--color-transition), background var(--color-transition), padding var(--transform-transition)
}

@media (max-width: 719px) {
    .vp-footer-wrapper {
        padding-inline-start: 2rem
    }
}

@media (min-width: 1440px) {
    .vp-footer-wrapper {
        z-index: 50;
        padding-inline-start: 2rem
    }
}

@media print {
    .vp-footer-wrapper {
        margin: 0 !important;
        padding: 0 !important
    }
}

@media (max-width: 419px) {
    .vp-footer-wrapper {
        display: block
    }
}

.no-sidebar .vp-footer-wrapper,
.sidebar-collapsed .vp-footer-wrapper {
    padding-inline-start: 2rem
}

.vp-footer {
    margin: .5rem 1rem;
    font-size: 14px
}

@media print {
    .vp-footer {
        display: none
    }
}

.vp-copyright {
    margin: 6px 0;
    font-size: 13px
}

.vp-page:not(.not-found)+.vp-footer-wrapper {
    margin-top: -2rem
}

.dropdown-wrapper {
    cursor: pointer
}

.dropdown-wrapper:not(:hover) .arrow {
    transform: rotate(-180deg)
}

.dropdown-wrapper .dropdown-title {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    padding: 0 .25rem;
    color: var(--grey-dark);
    font-weight: 500;
    font-size: inherit;
    font-family: inherit;
    line-height: inherit;
    cursor: inherit
}

.dropdown-wrapper .dropdown-title:hover {
    border-color: transparent
}

.dropdown-wrapper .dropdown-title .icon {
    margin-inline-end: .25em;
    font-size: 1em
}

.dropdown-wrapper .dropdown-title .arrow {
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    line-height: normal;
    transition: all .3s;
    font-size: 1.2em
}

html[data-theme=dark] .dropdown-wrapper .dropdown-title .arrow {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.dropdown-wrapper .dropdown-title .arrow.down {
    transform: rotate(180deg)
}

html[dir=rtl] .dropdown-wrapper .dropdown-title .arrow.down {
    transform: rotate(-180deg)
}

.dropdown-wrapper .dropdown-title .arrow.end {
    transform: rotate(90deg)
}

html[dir=rtl] .dropdown-wrapper .dropdown-title .arrow.end,
.dropdown-wrapper .dropdown-title .arrow.start {
    transform: rotate(-90deg)
}

html[dir=rtl] .dropdown-wrapper .dropdown-title .arrow.start {
    transform: rotate(90deg)
}

.dropdown-wrapper ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.dropdown-wrapper .nav-dropdown {
    position: absolute;
    top: 100%;
    inset-inline-end: 0;
    overflow-y: auto;
    box-sizing: border-box;
    min-width: 6rem;
    max-height: calc(100vh - var(--navbar-height));
    margin: 0;
    padding: .5rem .75rem;
    border: 1px solid var(--grey14);
    border-radius: .5rem;
    background: var(--bg-color);
    box-shadow: 2px 2px 10px var(--card-shadow);
    text-align: start;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: all .18s ease-out;
    transform: scale(.9)
}

.dropdown-wrapper:hover .nav-dropdown,
.dropdown-wrapper.open .nav-dropdown {
    z-index: 2;
    opacity: 1;
    visibility: visible;
    transform: none
}

.dropdown-wrapper .nav-link {
    position: relative;
    display: block;
    margin-bottom: 0;
    border-bottom: none;
    color: var(--grey-dark);
    font-weight: 400;
    font-size: .875rem;
    line-height: 1.7rem;
    transition: color var(--color-transition)
}

.dropdown-wrapper .nav-link:hover,
.dropdown-wrapper .nav-link.active {
    color: var(--theme-color)
}

.dropdown-wrapper .dropdown-subtitle {
    margin: 0;
    padding: .5rem .25rem 0;
    color: var(--grey-light);
    font-weight: 600;
    font-size: .75rem;
    line-height: 2;
    text-transform: uppercase
}

.dropdown-wrapper .dropdown-subitem-wrapper {
    padding: 0 0 .25rem
}

.dropdown-wrapper .dropdown-item {
    color: inherit;
    line-height: 1.7rem
}

.dropdown-wrapper .dropdown-item:last-child .dropdown-subtitle {
    padding-top: 0
}

.dropdown-wrapper .dropdown-item:last-child .dropdown-subitem-wrapper {
    padding-bottom: 0
}

.nav-screen-dropdown-title {
    border-width: 0;
    background: transparent;
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0;
    color: var(--grey-dark);
    font-size: inherit;
    font-family: inherit;
    text-align: start;
    cursor: pointer
}

.nav-screen-dropdown-title:hover,
.nav-screen-dropdown-title.active {
    color: var(--text-color)
}

.nav-screen-dropdown-title .title {
    flex: 1
}

.nav-screen-dropdown-title .arrow {
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    line-height: normal;
    transition: all .3s
}

html[data-theme=dark] .nav-screen-dropdown-title .arrow {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.nav-screen-dropdown-title .arrow.down {
    transform: rotate(180deg)
}

html[dir=rtl] .nav-screen-dropdown-title .arrow.down {
    transform: rotate(-180deg)
}

.nav-screen-dropdown-title .arrow.end {
    transform: rotate(90deg)
}

html[dir=rtl] .nav-screen-dropdown-title .arrow.end,
.nav-screen-dropdown-title .arrow.start {
    transform: rotate(-90deg)
}

html[dir=rtl] .nav-screen-dropdown-title .arrow.start {
    transform: rotate(90deg)
}

.nav-screen-dropdown {
    overflow: hidden;
    margin: .5rem 0 0;
    padding: 0;
    list-style: none;
    transition: transform .1s ease-out;
    transform: scaleY(1);
    transform-origin: top
}

.nav-screen-dropdown.hide {
    height: 0;
    margin: 0;
    transform: scaleY(0)
}

.nav-screen-dropdown .nav-link {
    position: relative;
    display: block;
    padding-inline-start: .5rem;
    font-weight: 400;
    line-height: 2
}

.nav-screen-dropdown .nav-link:hover,
.nav-screen-dropdown .nav-link.active {
    color: var(--theme-color)
}

.nav-screen-dropdown .nav-link .icon {
    font-size: 1em
}

.nav-screen-dropdown .dropdown-item {
    color: inherit;
    line-height: 1.7rem
}

.nav-screen-dropdown .dropdown-subtitle {
    margin: 0;
    padding-inline-start: .25rem;
    color: var(--grey-light);
    font-weight: 600;
    font-size: .75rem;
    line-height: 2;
    text-transform: uppercase
}

.nav-screen-dropdown .dropdown-subtitle .nav-link {
    padding: 0
}

.nav-screen-dropdown .dropdown-subitem-wrapper {
    margin: 0;
    padding: 0;
    list-style: none
}

.nav-screen-dropdown .dropdown-subitem {
    padding-inline-start: .5rem;
    font-size: .9em
}

.nav-screen-links {
    display: none;
    padding-bottom: .75rem
}

@media (max-width: 719px) {
    .nav-screen-links {
        display: block
    }
}

.nav-screen-links .navbar-links-item {
    position: relative;
    display: block;
    padding: 12px 4px 11px 0;
    border-bottom: 1px solid var(--border-color);
    font-size: 16px;
    line-height: 1.5rem
}

.nav-screen-links .nav-link {
    display: inline-block;
    width: 100%;
    color: var(--grey-dark);
    font-weight: 400
}

.nav-screen-links .nav-link:hover {
    color: var(--text-color)
}

.nav-screen-links .nav-link.active {
    color: var(--theme-color)
}

.appearance-title {
    display: block;
    margin: 0;
    padding: 0 .25rem;
    color: var(--grey-light);
    font-weight: 600;
    font-size: .75rem;
    line-height: 2
}

#appearance-switch {
    border-width: 0;
    background: transparent;
    vertical-align: middle;
    padding: 6px;
    color: var(--grey-dark);
    cursor: pointer;
    transition: color var(--color-transition)
}

#appearance-switch:hover {
    color: var(--theme-color)
}

#appearance-switch .icon {
    width: 1.25rem;
    height: 1.25rem
}

.theme-color-title {
    display: block;
    margin: 0;
    padding: 0 .25rem;
    color: var(--grey-light);
    font-weight: 600;
    font-size: .75rem;
    line-height: 2
}

#theme-color-picker {
    display: flex;
    margin: 0;
    padding: 0;
    list-style-type: none;
    font-size: 14px
}

#theme-color-picker li span {
    display: inline-block;
    vertical-align: middle;
    width: 15px;
    height: 15px;
    margin: 0 2px;
    border-radius: 2px
}

#theme-color-picker li span.theme-color,
#theme-color-picker li span.theme-color html[data-theme=dark] {
    background: #087dbe
}

@media print {
    .full-screen-wrapper {
        display: none
    }
}

.full-screen-title {
    display: block;
    margin: 0;
    padding: 0 .25rem;
    color: var(--grey-light);
    font-weight: 600;
    font-size: .75rem;
    line-height: 2
}

.full-screen,
.cancel-full-screen {
    border-width: 0;
    background: transparent;
    vertical-align: middle;
    padding: .375rem;
    color: var(--grey-dark);
    cursor: pointer
}

.full-screen:hover,
.cancel-full-screen:hover {
    color: var(--theme-color)
}

.full-screen .icon,
.cancel-full-screen .icon {
    width: 1.25rem;
    height: 1.25rem
}

.enter-fullscreen-icon:hover,
.cancel-fullscreen-icon {
    color: var(--theme-color)
}

.cancel-fullscreen-icon:hover {
    color: var(--grey-dark)
}

.vp-nav-screen-container {
    max-width: 320px;
    margin: 0 auto;
    padding: 2rem 0 4rem
}

#nav-screen {
    position: fixed;
    inset: var(--navbar-height) 0 0 0;
    z-index: 150;
    display: none;
    overflow-y: auto;
    padding: 0 2rem;
    background: var(--bg-color)
}

@media (max-width: 719px) {
    #nav-screen {
        display: block
    }
}

#nav-screen.fade-enter-active,
#nav-screen.fade-leave-active {
    transition: opacity .25s
}

#nav-screen.fade-enter-active .vp-nav-screen-container,
#nav-screen.fade-leave-active .vp-nav-screen-container {
    transition: transform .25s ease
}

#nav-screen.fade-enter-from,
#nav-screen.fade-leave-to {
    opacity: 0
}

#nav-screen.fade-enter-from .vp-nav-screen-container,
#nav-screen.fade-leave-to .vp-nav-screen-container {
    transform: translateY(-8px)
}

#nav-screen .icon {
    margin-inline-end: .25em;
    font-size: 1em
}

#nav-screen img.icon {
    vertical-align: -.125em;
    height: 1em
}

.vp-outlook-wrapper {
    display: flex;
    justify-content: space-around
}

.vp-nav-logo {
    vertical-align: top;
    height: var(--navbar-line-height);
    margin-inline-end: .8rem
}

.vp-nav-logo.light {
    display: inline-block
}

.vp-nav-logo.dark,
html[data-theme=dark] .vp-nav-logo.light {
    display: none
}

html[data-theme=dark] .vp-nav-logo.dark {
    display: inline-block
}

.vp-site-name {
    position: relative;
    color: var(--text-color);
    font-size: 1.25rem
}

@media (max-width: 719px) {
    .vp-site-name {
        overflow: hidden;
        width: calc(100vw - 9.4rem);
        text-overflow: ellipsis;
        white-space: nowrap
    }
}

.vp-brand:hover .vp-site-name {
    color: var(--theme-color)
}

.vp-navbar .vp-nav-links {
    display: flex;
    align-items: center;
    font-size: .875rem
}

.vp-navbar .vp-nav-item {
    position: relative;
    margin: 0 .25rem;
    line-height: 2rem
}

.vp-navbar .vp-nav-item:first-child {
    margin-inline-start: 0
}

.vp-navbar .vp-nav-item:last-child {
    margin-inline-end: 0
}

.vp-navbar .vp-nav-item>.nav-link {
    color: var(--grey-dark)
}

.vp-navbar .vp-nav-item>.nav-link:after {
    content: " ";
    position: absolute;
    inset: auto 50% 0;
    height: 2px;
    border-radius: 1px;
    background: var(--theme-color-light);
    visibility: hidden;
    transition: inset .2s ease-in-out
}

.vp-navbar .vp-nav-item>.nav-link.active {
    color: var(--theme-color)
}

.vp-navbar .vp-nav-item>.nav-link:hover:after,
.vp-navbar .vp-nav-item>.nav-link.active:after {
    inset: auto 0 0;
    visibility: visible
}

.vp-navbar .vp-action {
    margin: 0 !important
}

.vp-navbar .vp-action-link {
    display: inline-block;
    margin: auto;
    padding: 6px;
    color: var(--grey-dark);
    line-height: 1
}

.vp-navbar .vp-action-link:hover,
.vp-navbar .vp-action-link:active {
    color: var(--theme-color)
}

.vp-toggle-navbar-button {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    position: relative;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 6px
}

@media screen and (max-width: 719px) {
    .vp-toggle-navbar-button {
        display: flex
    }
}

.vp-toggle-navbar-button>span {
    position: relative;
    overflow: hidden;
    width: 16px;
    height: 14px
}

.vp-toggle-navbar-button .vp-top,
.vp-toggle-navbar-button .vp-middle,
.vp-toggle-navbar-button .vp-bottom {
    position: absolute;
    width: 16px;
    height: 2px;
    background: var(--grey-dark);
    transition: top .25s, background .5s, transform .25s
}

.vp-toggle-navbar-button .vp-top {
    top: 0;
    left: 0;
    transform: translate(0)
}

.vp-toggle-navbar-button .vp-middle {
    top: 6px;
    left: 0;
    transform: translate(8px)
}

.vp-toggle-navbar-button .vp-bottom {
    top: 12px;
    left: 0;
    transform: translate(4px)
}

.vp-toggle-navbar-button:hover .vp-top {
    top: 0;
    left: 0;
    transform: translate(4px)
}

.vp-toggle-navbar-button:hover .vp-middle {
    top: 6;
    left: 0;
    transform: translate(0)
}

.vp-toggle-navbar-button:hover .vp-bottom {
    top: 12px;
    left: 0;
    transform: translate(8px)
}

.vp-toggle-navbar-button.is-active .vp-top {
    top: 6px;
    transform: translate(0) rotate(225deg)
}

.vp-toggle-navbar-button.is-active .vp-middle {
    top: 6px;
    transform: translate(16px)
}

.vp-toggle-navbar-button.is-active .vp-bottom {
    top: 6px;
    transform: translate(0) rotate(135deg)
}

.vp-toggle-navbar-button.is-active:hover .vp-top,
.vp-toggle-navbar-button.is-active:hover .vp-middle,
.vp-toggle-navbar-button.is-active:hover .vp-bottom {
    background: var(--theme-color);
    transition: top .25s, background .25s, transform .25s
}

.vp-toggle-sidebar-button {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    display: none;
    vertical-align: middle;
    box-sizing: content-box;
    width: 1rem;
    height: 1rem;
    padding: .5rem;
    font: unset;
    transition: transform .2s ease-in-out
}

@media screen and (max-width: 719px) {
    .vp-toggle-sidebar-button {
        display: block;
        padding-inline-end: var(--navbar-mobile-horizontal-padding)
    }
}

.vp-toggle-sidebar-button:before,
.vp-toggle-sidebar-button:after,
.vp-toggle-sidebar-button .icon {
    display: block;
    width: 100%;
    height: 2px;
    border-radius: .05em;
    background: var(--grey-dark);
    transition: transform .2s ease-in-out
}

.vp-toggle-sidebar-button:before {
    content: " ";
    margin-top: .125em
}

.sidebar-open .vp-toggle-sidebar-button:before {
    transform: translateY(.34rem) rotate(135deg)
}

.vp-toggle-sidebar-button:after {
    content: " ";
    margin-bottom: .125em
}

.sidebar-open .vp-toggle-sidebar-button:after {
    transform: translateY(-.34rem) rotate(-135deg)
}

.vp-toggle-sidebar-button .icon {
    margin: .2em 0
}

.sidebar-open .vp-toggle-sidebar-button .icon {
    transform: scale(0)
}

.outlook-button {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    position: relative;
    padding: .375rem;
    color: var(--grey-dark)
}

.outlook-button .icon {
    vertical-align: middle;
    width: 1.25rem;
    height: 1.25rem
}

.outlook-dropdown {
    position: absolute;
    top: 100%;
    inset-inline-end: 0;
    overflow-y: auto;
    box-sizing: border-box;
    min-width: 100px;
    margin: 0;
    padding: .5rem .75rem;
    border: 1px solid var(--grey14);
    border-radius: .25rem;
    background: var(--bg-color);
    box-shadow: 2px 2px 10px var(--card-shadow);
    text-align: start;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: all .18s ease-out;
    transform: scale(.8)
}

.outlook-dropdown>*:not(:last-child) {
    padding-bottom: .5rem;
    border-bottom: 1px solid var(--grey14)
}

.outlook-button:hover .outlook-dropdown,
.outlook-button.open .outlook-dropdown {
    z-index: 2;
    opacity: 1;
    visibility: visible;
    transform: scale(1)
}

.vp-navbar {
    --navbar-line-height: calc(var(--navbar-height) - var(--navbar-vertical-padding) * 2);
    position: fixed;
    inset: 0 0 auto;
    z-index: 175;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    height: var(--navbar-height);
    padding: var(--navbar-vertical-padding) var(--navbar-horizontal-padding);
    background: var(--navbar-bg-color);
    box-shadow: 0 2px 8px var(--card-shadow);
    line-height: var(--navbar-line-height);
    white-space: nowrap;
    transition: transform var(--transform-transition);
    -webkit-backdrop-filter: saturate(150%) blur(12px);
    backdrop-filter: saturate(150%) blur(12px)
}

@media print {
    .vp-navbar {
        display: none
    }
}

.hide-navbar .vp-navbar.auto-hide {
    transform: translateY(-100%)
}

.vp-navbar .nav-link {
    padding: 0 .25rem;
    color: var(--grey-dark)
}

.vp-navbar .nav-link.active {
    color: var(--theme-color)
}

.vp-navbar .nav-link .icon {
    margin-inline-end: .25em;
    font-size: 1em
}

.vp-navbar .nav-link img.icon {
    vertical-align: -.125em;
    height: 1em
}

.vp-navbar-start,
.vp-navbar-end,
.vp-navbar-center {
    display: flex;
    flex: 1;
    align-items: center
}

.vp-navbar-start>*,
.vp-navbar-end>*,
.vp-navbar-center>* {
    position: relative;
    margin: 0 .25rem !important
}

.vp-navbar-start>*:first-child,
.vp-navbar-end>*:first-child,
.vp-navbar-center>*:first-child {
    margin-inline-start: 0 !important
}

.vp-navbar-start>*:last-child,
.vp-navbar-end>*:last-child,
.vp-navbar-center>*:last-child {
    margin-inline-end: 0 !important
}

.vp-navbar-start {
    justify-content: start
}

.vp-navbar-center {
    justify-content: center
}

.vp-navbar-end {
    justify-content: end
}

.vp-sidebar-header {
    display: flex;
    align-items: center;
    overflow: hidden;
    box-sizing: border-box;
    width: calc(100% - 1rem);
    margin: 0;
    margin-inline: .5rem;
    padding: .25rem .5rem;
    border-width: 0;
    border-radius: .375rem;
    background: transparent;
    color: var(--text-color);
    font-size: 1.1em;
    line-height: 1.5;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    transition: color .15s ease;
    transform: rotate(0)
}

.vp-sidebar-header.open {
    color: inherit
}

.vp-sidebar-header.clickable:hover {
    background: var(--bg-color-secondary)
}

.vp-sidebar-header.clickable.exact {
    border-inline-start-color: var(--theme-color);
    color: var(--theme-color)
}

.vp-sidebar-header.clickable.exact a {
    color: inherit
}

.vp-sidebar-header .vp-sidebar-title {
    flex: 1
}

.vp-sidebar-header .vp-arrow {
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    line-height: normal;
    transition: all .3s;
    font-size: 1.5em
}

html[data-theme=dark] .vp-sidebar-header .vp-arrow {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.vp-sidebar-header .vp-arrow.down {
    transform: rotate(180deg)
}

html[dir=rtl] .vp-sidebar-header .vp-arrow.down {
    transform: rotate(-180deg)
}

.vp-sidebar-header .vp-arrow.end {
    transform: rotate(90deg)
}

html[dir=rtl] .vp-sidebar-header .vp-arrow.end,
.vp-sidebar-header .vp-arrow.start {
    transform: rotate(-90deg)
}

html[dir=rtl] .vp-sidebar-header .vp-arrow.start {
    transform: rotate(90deg)
}

button.vp-sidebar-header {
    outline: none;
    font-weight: inherit;
    font-family: inherit;
    line-height: inherit;
    text-align: start;
    cursor: pointer
}

.vp-sidebar-link {
    display: inline-block;
    box-sizing: border-box;
    width: calc(100% - 1rem);
    margin-inline: .5rem;
    padding: .25rem .5rem;
    border-radius: .375rem;
    color: var(--text-color);
    font-weight: 400;
    font-size: 1em;
    line-height: 1.5
}

.vp-sidebar-link:hover {
    background: var(--bg-color-secondary)
}

.vp-sidebar-link.active {
    background: var(--theme-color-mask);
    color: var(--theme-color);
    font-weight: 500
}

.vp-sidebar-link.active .icon {
    color: var(--theme-color)
}

.vp-sidebar-group:not(.collapsible) .vp-sidebar-header:not(.clickable) {
    color: inherit;
    cursor: auto
}

.vp-sidebar-group .vp-sidebar-group {
    padding-inline-start: .75rem
}

.vp-sidebar-group .vp-sidebar-group .vp-sidebar-header {
    font-size: 1em
}

.vp-sidebar-group .vp-sidebar-link {
    padding-inline-start: 1.25rem
}

.vp-sidebar-links,
.vp-sidebar-links ul {
    margin: 0;
    padding: 0
}

.vp-sidebar-links li {
    list-style-type: none
}

.vp-sidebar>.vp-sidebar-links {
    padding: 1.5rem 0
}

@media (max-width: 719px) {
    .vp-sidebar>.vp-sidebar-links {
        padding: 1rem 0
    }
}

.vp-sidebar>.vp-sidebar-links>li>.vp-sidebar-link {
    font-size: 1.1em
}

.vp-sidebar>.vp-sidebar-links>li:not(:first-child) {
    margin-top: .5rem
}

.vp-sidebar {
    position: fixed;
    top: 0;
    bottom: 0;
    inset-inline-start: 0;
    z-index: 1;
    overflow-y: auto;
    width: var(--sidebar-width);
    margin: 0;
    padding-inline-start: calc(var(--sidebar-space) - var(--sidebar-width));
    background: var(--sidebar-bg-color);
    box-shadow: 2px 0 8px var(--card-shadow);
    font-size: .94rem;
    transition: padding var(--transform-transition), transform var(--transform-transition);
    -webkit-backdrop-filter: saturate(150%) blur(12px);
    backdrop-filter: saturate(150%) blur(12px);
    scrollbar-color: var(--theme-color) var(--border-color);
    scrollbar-width: thin
}

@media (max-width: 959px) {
    .vp-sidebar {
        font-size: .86em
    }
}

@media (max-width: 719px) {
    .vp-sidebar {
        z-index: 125;
        box-shadow: none;
        transform: translate(-100%)
    }

    html[dir=rtl] .vp-sidebar {
        transform: translate(100%)
    }
}

@media (min-width: 1440px) {
    .vp-sidebar {
        padding-bottom: 3rem;
        box-shadow: none;
        font-size: 1rem
    }
}

@media print {
    .vp-sidebar {
        display: none
    }
}

.vp-sidebar a {
    display: inline-block;
    color: var(--text-color);
    font-weight: 400
}

.vp-sidebar .icon {
    margin-inline-end: .25em;
    font-size: 1em
}

.vp-sidebar img.icon {
    vertical-align: -.125em;
    height: 1em
}

.vp-sidebar-mask {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9;
    background: #00000026
}

.vp-sidebar-mask.fade-enter-active,
.vp-sidebar-mask.fade-leave-active {
    transition: opacity .25s
}

.vp-sidebar-mask.fade-enter-from,
.vp-sidebar-mask.fade-leave-to {
    opacity: 0
}

.toggle-sidebar-wrapper {
    position: fixed;
    top: var(--navbar-height);
    bottom: 0;
    inset-inline-start: var(--sidebar-space);
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    transition: inset-inline-start var(--transform-transition)
}

@media (max-width: 719px) {
    .toggle-sidebar-wrapper {
        display: none
    }
}

@media (min-width: 1440px) {
    .toggle-sidebar-wrapper {
        display: none
    }
}

.toggle-sidebar-wrapper:hover {
    background: #7f7f7f0d;
    cursor: pointer
}

.toggle-sidebar-wrapper .arrow {
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    line-height: normal;
    transition: all .3s
}

html[data-theme=dark] .toggle-sidebar-wrapper .arrow {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.toggle-sidebar-wrapper .arrow.down {
    transform: rotate(180deg)
}

html[dir=rtl] .toggle-sidebar-wrapper .arrow.down {
    transform: rotate(-180deg)
}

.toggle-sidebar-wrapper .arrow.end {
    transform: rotate(90deg)
}

html[dir=rtl] .toggle-sidebar-wrapper .arrow.end,
.toggle-sidebar-wrapper .arrow.start {
    transform: rotate(-90deg)
}

html[dir=rtl] .toggle-sidebar-wrapper .arrow.start {
    transform: rotate(90deg)
}

.theme-container {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100vh
}

.theme-container .vp-page {
    padding-top: var(--navbar-height);
    padding-inline-start: calc(var(--sidebar-space) + 2rem)
}

@media (max-width: 719px) {
    .theme-container .vp-page {
        padding-inline: 0
    }
}

@media (min-width: 1440px) {
    .theme-container .vp-page {
        padding-inline-end: calc(100vw - var(--content-width) - var(--sidebar-space) - 6rem)
    }
}

.theme-container .vp-sidebar {
    top: var(--navbar-height)
}

.theme-container.no-navbar .vp-page {
    padding-top: 0
}

.theme-container.no-navbar .vp-sidebar {
    top: 0
}

@media (max-width: 719px) {
    .theme-container.no-navbar .vp-sidebar {
        top: 0
    }
}

@media (max-width: 719px) {
    .theme-container.hide-navbar .vp-sidebar {
        top: 0
    }
}

.theme-container.sidebar-collapsed .vp-page {
    padding-inline-start: 0
}

.theme-container.sidebar-collapsed .vp-sidebar {
    box-shadow: none;
    transform: translate(-100%)
}

html[dir=rtl] .theme-container.sidebar-collapsed .vp-sidebar {
    transform: translate(100%)
}

.theme-container.sidebar-collapsed .toggle-sidebar-wrapper {
    inset-inline-start: 0
}

.theme-container.no-sidebar .vp-page {
    padding-inline: 0
}

@media (min-width: 1440px) {
    .theme-container.no-sidebar.has-toc .vp-page {
        padding-inline-end: 16rem
    }
}

.theme-container.no-sidebar .vp-toggle-sidebar-button,
.theme-container.no-sidebar .toggle-sidebar-wrapper,
.theme-container.no-sidebar .vp-sidebar {
    display: none
}

.theme-container.sidebar-open .vp-sidebar {
    box-shadow: 2px 0 8px var(--card-shadow);
    transform: translate(0)
}

.vp-feature-wrapper {
    position: relative
}

.vp-feature-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-attachment: fixed;
    background-position: 50%;
    background-size: cover
}

.vp-feature-bg.light {
    display: inline-block
}

.vp-feature-bg.dark,
html[data-theme=dark] .vp-feature-bg.light {
    display: none
}

html[data-theme=dark] .vp-feature-bg.dark {
    display: inline-block
}

.vp-feature {
    position: relative;
    z-index: 1;
    margin: 0 auto;
    padding: 1.5rem 1rem;
    color: var(--text-color-lighter);
    text-align: center
}

.vp-feature-bg+.vp-feature {
    color: #222
}

html[data-theme=dark] .vp-feature-bg+.vp-feature {
    color: #eee
}

.vp-feature-bg+.vp-feature .icon {
    color: inherit
}

.vp-feature-image {
    height: 10rem;
    margin: 0 auto
}

@media (max-width: 959px) {
    .vp-feature-image {
        height: 8rem
    }
}

.vp-feature-image.light {
    display: inline-block
}

.vp-feature-image.dark,
html[data-theme=dark] .vp-feature-image.light {
    display: none
}

html[data-theme=dark] .vp-feature-image.dark {
    display: inline-block
}

.vp-feature-header {
    margin-bottom: 1.5rem;
    border-bottom: none;
    font-size: 3rem;
    ;
    text-align: center
}

@media (max-width: 959px) {
    .vp-feature-header {
        font-size: 2.5rem
    }
}

@media (max-width: 719px) {
    .vp-feature-header {
        font-size: 2.25rem
    }
}

@media (max-width: 419px) {
    .vp-feature-header {
        font-size: 2rem
    }
}

.vp-feature-description {
    font-size: 1.125rem
}

.vp-features {
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    place-content: stretch center;
    margin: 1rem 0;
    text-align: start
}

@media print {
    .vp-features {
        display: block
    }
}

.vp-features:first-child {
    border-top: 1px solid var(--border-color)
}

.vp-feature-item {
    position: relative;
    display: block;
    flex-basis: calc(33% - 3rem);
    margin: .5rem;
    padding: 1rem;
    border-radius: .5rem;
    color: inherit;
    transition: background var(--color-transition), box-shadow var(--color-transition), transform var(--transform-transition)
}

@media (min-width: 1440px) {
    .vp-feature-item {
        flex-basis: calc(25% - 3rem)
    }
}

@media (max-width: 959px) {
    .vp-feature-item {
        flex-basis: calc(50% - 3rem)
    }
}

@media (max-width: 719px) {
    .vp-feature-item {
        flex-basis: 100%;
        font-size: .95rem
    }
}

@media (max-width: 419px) {
    .vp-feature-item {
        margin: .5rem 0;
        font-size: .9rem
    }
}

.vp-feature-item.link {
    cursor: pointer
}

@media print {
    .vp-feature-item.link {
        text-decoration: none
    }
}

.vp-feature-item .icon {
    display: inline-block;
    height: 1.1em;
    margin-inline-end: .5rem;
    color: var(--theme-color);
    font-weight: 400;
    font-size: 1.1em
}

.vp-feature-item:hover {
    background-color: var(--bg-color-secondary);
    box-shadow: 0 2px 12px 0 var(--card-shadow);
    transform: translate(-2px, -2px);
    transform: scale(1.05)
}

.vp-feature-bg+.vp-feature .vp-feature-item:hover {
    background-color: transparent
}

.vp-feature-item:only-child {
    flex-basis: 100%
}

.vp-feature-item:first-child:nth-last-child(2),
.vp-feature-item:nth-child(2):last-child {
    flex-basis: calc(50% - 3rem)
}

@media (max-width: 719px) {

    .vp-feature-item:first-child:nth-last-child(2),
    .vp-feature-item:nth-child(2):last-child {
        flex-basis: 100%
    }
}

.vp-feature-title {
    margin: .25rem 0 .5rem;
    font-weight: 700;
    font-size: 1.3rem;
    
}

@media (max-width: 419px) {
    .vp-feature-title {
        font-size: 1.2rem
    }
}

.vp-feature-details {
    margin: 0;
    line-height: 1.4
}

.fade-slide-y-enter-active {
    transition: all .3s ease !important
}

.fade-slide-y-leave-active {
    transition: all .3s cubic-bezier(1, .5, .8, 1) !important
}

.fade-slide-y-enter-from,
.fade-slide-y-leave-to {
    opacity: 0;
    transform: translateY(10px)
}

.vp-hero-info-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-inline: auto
}

.vp-hero-info-wrapper.fullscreen {
    height: calc(100vh - var(--navbar-height)) !important
}

.vp-hero-info {
    z-index: 1;
    width: 100%;
    padding-inline: 2.5rem
}

@media (max-width: 959px) {
    .vp-hero-info {
        padding-inline: 1.5rem
    }
}

@media (min-width: 959px) {
    .vp-hero-info {
        display: flex;
        align-items: center;
        justify-content: space-evenly
    }
}

.vp-hero-mask {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-position: 50%;
    background-size: cover
}

.vp-hero-mask:after {
    content: " ";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: block
}

.vp-hero-mask.light {
    display: block
}

html[data-theme=dark] .vp-hero-mask.light,
.vp-hero-mask.dark {
    display: none
}

html[data-theme=dark] .vp-hero-mask.dark {
    display: block
}

.vp-hero-infos {
    z-index: 1;
    margin: 0 .5rem
}

.vp-hero-image {
    display: block;
    max-width: 100%;
    max-height: 18rem;
    margin: 1rem
}

@media (max-width: 959px) {
    .vp-hero-image {
        margin: 2rem auto
    }
}

@media (max-width: 719px) {
    .vp-hero-image {
        max-height: 16rem;
        margin: 1.5rem auto
    }
}

@media (max-width: 419px) {
    .vp-hero-image {
        max-height: 14rem
    }
}

.vp-hero-image.light {
    display: block
}

html[data-theme=dark] .vp-hero-image.light,
.vp-hero-image.dark {
    display: none
}

html[data-theme=dark] .vp-hero-image.dark {
    display: block
}

#main-title {
    margin: .5rem 0;
    background: linear-gradient(120deg, var(--theme-color-light), var(--theme-color) 30%, #4908be 100%);
    -webkit-background-clip: text;
    background-clip: text;
    font-weight: 700;
    font-size: 3.6rem;
    ;
    line-height: 1.5;
    -webkit-text-fill-color: transparent
}

@media (max-width: 719px) {
    #main-title {
        margin: 0
    }
}

@media (max-width: 959px) {
    #main-title {
        font-size: 2.5rem;
        text-align: center
    }
}

@media (max-width: 719px) {
    #main-title {
        font-size: 2.25rem;
        text-align: center
    }
}

@media (max-width: 419px) {
    #main-title {
        margin: 0 auto;
        font-size: 2rem
    }
}

#main-description,
.vp-hero-actions {
    margin: 1.8rem 0
}

@media (max-width: 719px) {

    #main-description,
    .vp-hero-actions {
        margin: 1.5rem 0
    }
}

@media (max-width: 959px) {

    #main-description,
    .vp-hero-actions {
        margin: 1.5rem auto;
        text-align: center
    }
}

@media (max-width: 419px) {

    #main-description,
    .vp-hero-actions {
        margin: 1.2rem 0
    }
}

#main-description {
    max-width: 35rem;
    color: var(--text-color-light);
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.3
}

@media (max-width: 719px) {
    #main-description {
        font-size: 1.4rem
    }
}

@media (max-width: 419px) {
    #main-description {
        font-size: 1.2rem
    }
}

.vp-hero-action {
    display: inline-block;
    overflow: hidden;
    min-width: 4rem;
    margin: .5rem;
    padding: .5em 1.5rem;
    border-radius: 2rem;
    background: var(--bg-color-secondary);
    color: var(--text-color);
    font-size: 1.2rem;
    text-align: center;
    transition: color var(--color-transition), color var(--color-transition), transform var(--transform-transition)
}

@media (max-width: 719px) {
    .vp-hero-action {
        padding: .5rem 1rem;
        font-size: 1.1rem
    }
}

@media (max-width: 419px) {
    .vp-hero-action {
        font-size: 1rem
    }
}

@media print {
    .vp-hero-action {
        text-decoration: none
    }
}

.vp-hero-action:hover {
    background: var(--bg-color-tertiary)
}

.vp-hero-action.primary {
    border-color: var(--theme-color);
    background: var(--theme-color);
    color: var(--white)
}

.vp-hero-action.primary:hover {
    border-color: var(--theme-color-light);
    background: var(--theme-color-light)
}

.vp-project-home:not(.pure) .vp-hero-action:active {
    transform: scale(.96)
}

.vp-hero-action .icon {
    margin-inline-end: .25em
}

.vp-highlight-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.vp-highlight-wrapper:nth-child(odd) .vp-highlight {
    flex-direction: row-reverse
}

.vp-highlight {
    z-index: 1;
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: flex-end;
    max-width: var(--home-page-width);
    margin: 0 auto;
    padding: 1.5rem 2.5rem;
    color: #222
}

@media (max-width: 719px) {
    .vp-highlight {
        display: block;
        padding-inline: 1.5rem;
        text-align: center
    }
}

html[data-theme=dark] .vp-highlight {
    color: #eee
}

.vp-highlight-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-attachment: fixed;
    background-position: 50%;
    background-size: cover
}

.vp-highlight-bg.light {
    display: inline-block
}

.vp-highlight-bg.dark,
html[data-theme=dark] .vp-highlight-bg.light {
    display: none
}

html[data-theme=dark] .vp-highlight-bg.dark {
    display: inline-block
}

.vp-highlight-image {
    width: 12rem;
    margin: 2rem 4rem
}

@media (max-width: 959px) {
    .vp-highlight-image {
        width: 10rem
    }
}

@media (max-width: 719px) {
    .vp-highlight-image {
        width: 8rem;
        margin: 0 auto
    }
}

.vp-highlight-image.light {
    display: inline-block
}

.vp-highlight-image.dark,
html[data-theme=dark] .vp-highlight-image.light {
    display: none
}

html[data-theme=dark] .vp-highlight-image.dark {
    display: inline-block
}

.vp-highlight-info-wrapper {
    display: flex;
    flex: 1;
    justify-content: center;
    padding: 2rem
}

@media (max-width: 719px) {
    .vp-highlight-info-wrapper {
        padding: 1rem 0
    }
}

.vp-highlight-info-wrapper:only-child {
    flex: 1 0 100%
}

.vp-highlight-info {
    text-align: start
}

.vp-highlight-header {
    margin-bottom: 1.5rem;
    border-bottom: none;
    font-size: 3rem;
    
}

@media (max-width: 959px) {
    .vp-highlight-header {
        font-size: 2.5rem
    }
}

@media (max-width: 719px) {
    .vp-highlight-header {
        font-size: 2.25rem;
        text-align: center
    }
}

@media (max-width: 419px) {
    .vp-highlight-header {
        font-size: 2rem
    }
}

.vp-highlight-description {
    font-size: 1.125rem
}

.vp-highlights {
    margin-inline-start: -1.25em;
    padding-inline-start: 0
}

.vp-highlight-item-wrapper {
    padding: .5em .5em .5em 1.75em;
    border-radius: .5rem;
    list-style: none
}

.vp-highlight-item-wrapper.link {
    cursor: pointer
}

.vp-highlight-item-wrapper:hover {
    background-color: var(--bg-color-secondary);
    box-shadow: 0 2px 12px 0 var(--card-shadow);
    transition: transform var(--transform-transition);
    transform: translate(-2px, -2px)
}

.vp-highlight-bg+.vp-highlight .vp-highlight-item-wrapper:hover {
    background-color: transparent
}

.vp-highlight-item-wrapper::marker {
    font-weight: 700
}

.vp-highlight-item {
    display: list-item;
    color: inherit;
    list-style: initial
}

@media print {
    .vp-highlight-item {
        text-decoration: none
    }
}

.vp-highlight-title {
    margin: 0;
    font-weight: 600;
    font-size: 1.125rem;
    
}

.vp-highlight-title .icon {
    margin-inline-end: .25em;
    font-size: 1em
}

.vp-highlight-title img.icon {
    vertical-align: -.125em;
    height: 1em
}

.vp-highlight-details {
    margin: .5rem 0 0
}

.vp-project-home {
    --content-width: var(--home-page-width);
    display: block;
    flex: 1;
    padding-top: var(--navbar-height)
}

@media screen {
    .vp-project-home .vp-hero-info-wrapper:not(.fullscreen) .vp-hero-info {
        max-width: var(--home-page-width)
    }
}

@media screen {
    .vp-project-home .vp-feature {
        max-width: var(--home-page-width)
    }
}

.vp-project-home .theme-hope-content {
    padding-bottom: 1.5rem !important
}

.vp-project-home .theme-hope-content:empty {
    padding: 0 !important
}

.theme-hope-content:not(.custom)>*:first-child {
    margin-top: 0
}

.vp-breadcrumb {
    max-width: var(--content-width, 740px);
    margin-inline: auto;
    padding-inline: 2.5rem;
    position: relative;
    z-index: 2;
    padding-top: 1rem;
    font-size: 15px
}

@media (max-width: 959px) {
    .vp-breadcrumb {
        padding-inline: 1.5rem
    }
}

@media print {
    .vp-breadcrumb {
        max-width: unset
    }
}

@media (max-width: 959px) {
    .vp-breadcrumb {
        font-size: 14px
    }
}

@media (max-width: 419px) {
    .vp-breadcrumb {
        padding-top: .5rem;
        font-size: 12.8px
    }
}

@media print {
    .vp-breadcrumb {
        display: none
    }
}

.vp-breadcrumb .icon {
    margin-inline-end: .25em;
    font-size: 1em
}

.vp-breadcrumb img.icon {
    vertical-align: -.125em;
    height: 1em
}

.vp-breadcrumb a {
    display: inline-block;
    padding: 0 .5em
}

.vp-breadcrumb a:before {
    position: relative;
    bottom: .125rem;
    margin-inline-end: .25em
}

.vp-breadcrumb a:hover {
    color: var(--theme-color)
}

.vp-breadcrumb ol {
    margin: 0;
    padding-inline-start: 0;
    list-style: none
}

.vp-breadcrumb li {
    display: inline-block;
    line-height: 1.5
}

.vp-breadcrumb li:first-child a {
    padding-inline-start: 0
}

.vp-breadcrumb li:last-child a {
    padding-inline-end: 0
}

.vp-breadcrumb li.is-active a {
    color: var(--grey-light);
    cursor: default;
    pointer-events: none
}

.vp-breadcrumb li+li:before {
    content: "/";
    color: var(--grey-light)
}

.vp-page-nav {
    display: flex;
    flex-wrap: wrap;
    max-width: var(--content-width, 740px);
    min-height: 2rem;
    margin-inline: auto;
    margin-top: 0;
    padding-block: .5rem;
    padding-inline: 2rem;
    border-top: 1px solid var(--border-color)
}

@media (max-width: 959px) {
    .vp-page-nav {
        padding-inline: 1rem
    }
}

@media print {
    .vp-page-nav {
        display: none
    }
}

.vp-page-nav .nav-link {
    display: inline-block;
    flex-grow: 1;
    margin: .25rem;
    padding: .25rem .5rem;
    border: 1px solid var(--border-color);
    border-radius: .25rem
}

.vp-page-nav .nav-link:hover {
    background: var(--bg-color-secondary)
}

.vp-page-nav .nav-link .hint {
    color: var(--grey-light);
    font-size: .875rem;
    line-height: 2
}

.vp-page-nav .nav-link .arrow {
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    line-height: normal;
    transition: all .3s;
    font-size: .75rem
}

html[data-theme=dark] .vp-page-nav .nav-link .arrow {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.vp-page-nav .nav-link .arrow.down {
    transform: rotate(180deg)
}

html[dir=rtl] .vp-page-nav .nav-link .arrow.down {
    transform: rotate(-180deg)
}

.vp-page-nav .nav-link .arrow.end {
    transform: rotate(90deg)
}

html[dir=rtl] .vp-page-nav .nav-link .arrow.end,
.vp-page-nav .nav-link .arrow.start {
    transform: rotate(-90deg)
}

html[dir=rtl] .vp-page-nav .nav-link .arrow.start {
    transform: rotate(90deg)
}

.vp-page-nav .prev {
    text-align: start
}

.vp-page-nav .prev .icon {
    margin-inline-end: .25em;
    font-size: 1em
}

.vp-page-nav .prev img.icon {
    vertical-align: -.125em;
    height: 1em
}

.vp-page-nav .next {
    text-align: end
}

.vp-page-nav .next .icon {
    margin-inline-start: .25em;
    font-size: 1em
}

.vp-page-nav .next img.icon {
    vertical-align: -.125em;
    height: 1em
}

.page-author-item {
    display: inline-block;
    margin: 0 4px;
    font-weight: 400;
    overflow-wrap: break-word
}

.page-category-info {
    flex-wrap: wrap
}

.page-category-item {
    display: inline-block;
    margin: .125em .25em;
    padding: 0 .25em;
    border-radius: .25em;
    background: var(--bg-color-secondary);
    color: var(--text-color-light);
    font-weight: 700;
    font-size: .75rem;
    line-height: 2;
    transition: background var(--color-transition), color var(--color-transition)
}

@media print {
    .page-category-item {
        padding: 0;
        font-weight: 400
    }

    .page-category-item:after {
        content: ", "
    }

    .page-category-item:last-of-type:after {
        content: ""
    }
}

.page-category-item.clickable>span:hover {
    color: var(--theme-color);
    cursor: pointer
}

.page-category-item.category0 {
    background: #fde5e7;
    color: #ec2f3e
}

html[data-theme=dark] .page-category-item.category0 {
    background: #340509;
    color: #ba111f
}

.page-category-item.category0:hover {
    background: #f9bec3
}

html[data-theme=dark] .page-category-item.category0:hover {
    background: #53080e
}

.page-category-item.category1 {
    background: #ffeee8;
    color: #fb7649
}

html[data-theme=dark] .page-category-item.category1 {
    background: #441201;
    color: #f54205
}

.page-category-item.category1:hover {
    background: #fed4c6
}

html[data-theme=dark] .page-category-item.category1:hover {
    background: #6d1d02
}

.page-category-item.category2 {
    background: #fef5e7;
    color: #f5b041
}

html[data-theme=dark] .page-category-item.category2 {
    background: #3e2703;
    color: #e08e0b
}

.page-category-item.category2:hover {
    background: #fce6c4
}

html[data-theme=dark] .page-category-item.category2:hover {
    background: #633f05
}

.page-category-item.category3 {
    background: #eafaf1;
    color: #55d98d
}

html[data-theme=dark] .page-category-item.category3 {
    background: #0c331c;
    color: #29b866
}

.page-category-item.category3:hover {
    background: #caf3db
}

html[data-theme=dark] .page-category-item.category3:hover {
    background: #12522d
}

.page-category-item.category4 {
    background: #e6f9ee;
    color: #36d278
}

html[data-theme=dark] .page-category-item.category4 {
    background: #092917;
    color: #219552
}

.page-category-item.category4:hover {
    background: #c0f1d5
}

html[data-theme=dark] .page-category-item.category4:hover {
    background: #0f4224
}

.page-category-item.category5 {
    background: #e1fcfc;
    color: #16e1e1
}

html[data-theme=dark] .page-category-item.category5 {
    background: #042929;
    color: #0e9595
}

.page-category-item.category5:hover {
    background: #b4f8f8
}

html[data-theme=dark] .page-category-item.category5:hover {
    background: #064242
}

.page-category-item.category6 {
    background: #e4f0fe;
    color: #2589f6
}

html[data-theme=dark] .page-category-item.category6 {
    background: #021b36;
    color: #0862c3
}

.page-category-item.category6:hover {
    background: #bbdafc
}

html[data-theme=dark] .page-category-item.category6:hover {
    background: #042c57
}

.page-category-item.category7 {
    background: #f7f1fd;
    color: #bb8ced
}

html[data-theme=dark] .page-category-item.category7 {
    background: #2a0b4b;
    color: #9851e4
}

.page-category-item.category7:hover {
    background: #eadbfa
}

html[data-theme=dark] .page-category-item.category7:hover {
    background: #431277
}

.page-category-item.category8 {
    background: #fdeaf5;
    color: #ef59ab
}

html[data-theme=dark] .page-category-item.category8 {
    background: #400626;
    color: #e81689
}

.page-category-item.category8:hover {
    background: #facbe5
}

html[data-theme=dark] .page-category-item.category8:hover {
    background: #670a3d
}

.page-original-info {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    overflow: hidden;
    padding: 0 .5em;
    border: .5px solid var(--grey-dark);
    border-radius: .75em;
    background: var(--bg-color);
    font-size: .75em;
    line-height: 1.5 !important
}

.page-tag-info {
    flex-wrap: wrap
}

.page-tag-item {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    overflow: hidden;
    min-width: 1.5rem;
    margin: .125rem;
    padding: .125rem .25rem .125rem .625rem;
    background: var(--bg-color-secondary);
    background: linear-gradient(135deg, transparent .75em, var(--bg-color-secondary) 0) top, linear-gradient(45deg, transparent .75em, var(--bg-color-secondary) 0) bottom;
    background-size: 100% 52% !important;
    background-repeat: no-repeat !important;
    color: var(--text-color-light);
    font-weight: 700;
    font-size: .625rem;
    line-height: 1.5;
    text-align: center;
    transition: background var(--color-transition), color var(--color-transition)
}

@media print {
    .page-tag-item {
        padding: 0;
        font-weight: 400
    }

    .page-tag-item:after {
        content: ", "
    }

    .page-tag-item:last-of-type:after {
        content: ""
    }
}

.page-tag-item.clickable:hover {
    cursor: pointer
}

.page-tag-item.tag0 {
    background: #fde5e7;
    background: linear-gradient(135deg, transparent .75em, #fde5e7 0) top, linear-gradient(45deg, transparent .75em, #fde5e7 0) bottom;
    color: #ec2f3e
}

html[data-theme=dark] .page-tag-item.tag0 {
    background: #340509;
    background: linear-gradient(135deg, transparent .75em, #340509 0) top, linear-gradient(45deg, transparent .75em, #340509 0) bottom;
    color: #ba111f
}

.page-tag-item.tag0.clickable:hover {
    background: #f9bec3;
    background: linear-gradient(135deg, transparent .75em, #f9bec3 0) top, linear-gradient(45deg, transparent .75em, #f9bec3 0) bottom
}

html[data-theme=dark] .page-tag-item.tag0.clickable:hover {
    background: #53080e;
    background: linear-gradient(135deg, transparent .75em, #53080e 0) top, linear-gradient(45deg, transparent .75em, #53080e 0) bottom
}

.page-tag-item.tag1 {
    background: #ffeee8;
    background: linear-gradient(135deg, transparent .75em, #ffeee8 0) top, linear-gradient(45deg, transparent .75em, #ffeee8 0) bottom;
    color: #fb7649
}

html[data-theme=dark] .page-tag-item.tag1 {
    background: #441201;
    background: linear-gradient(135deg, transparent .75em, #441201 0) top, linear-gradient(45deg, transparent .75em, #441201 0) bottom;
    color: #f54205
}

.page-tag-item.tag1.clickable:hover {
    background: #fed4c6;
    background: linear-gradient(135deg, transparent .75em, #fed4c6 0) top, linear-gradient(45deg, transparent .75em, #fed4c6 0) bottom
}

html[data-theme=dark] .page-tag-item.tag1.clickable:hover {
    background: #6d1d02;
    background: linear-gradient(135deg, transparent .75em, #6d1d02 0) top, linear-gradient(45deg, transparent .75em, #6d1d02 0) bottom
}

.page-tag-item.tag2 {
    background: #fef5e7;
    background: linear-gradient(135deg, transparent .75em, #fef5e7 0) top, linear-gradient(45deg, transparent .75em, #fef5e7 0) bottom;
    color: #f5b041
}

html[data-theme=dark] .page-tag-item.tag2 {
    background: #3e2703;
    background: linear-gradient(135deg, transparent .75em, #3e2703 0) top, linear-gradient(45deg, transparent .75em, #3e2703 0) bottom;
    color: #e08e0b
}

.page-tag-item.tag2.clickable:hover {
    background: #fce6c4;
    background: linear-gradient(135deg, transparent .75em, #fce6c4 0) top, linear-gradient(45deg, transparent .75em, #fce6c4 0) bottom
}

html[data-theme=dark] .page-tag-item.tag2.clickable:hover {
    background: #633f05;
    background: linear-gradient(135deg, transparent .75em, #633f05 0) top, linear-gradient(45deg, transparent .75em, #633f05 0) bottom
}

.page-tag-item.tag3 {
    background: #eafaf1;
    background: linear-gradient(135deg, transparent .75em, #eafaf1 0) top, linear-gradient(45deg, transparent .75em, #eafaf1 0) bottom;
    color: #55d98d
}

html[data-theme=dark] .page-tag-item.tag3 {
    background: #0c331c;
    background: linear-gradient(135deg, transparent .75em, #0c331c 0) top, linear-gradient(45deg, transparent .75em, #0c331c 0) bottom;
    color: #29b866
}

.page-tag-item.tag3.clickable:hover {
    background: #caf3db;
    background: linear-gradient(135deg, transparent .75em, #caf3db 0) top, linear-gradient(45deg, transparent .75em, #caf3db 0) bottom
}

html[data-theme=dark] .page-tag-item.tag3.clickable:hover {
    background: #12522d;
    background: linear-gradient(135deg, transparent .75em, #12522d 0) top, linear-gradient(45deg, transparent .75em, #12522d 0) bottom
}

.page-tag-item.tag4 {
    background: #e6f9ee;
    background: linear-gradient(135deg, transparent .75em, #e6f9ee 0) top, linear-gradient(45deg, transparent .75em, #e6f9ee 0) bottom;
    color: #36d278
}

html[data-theme=dark] .page-tag-item.tag4 {
    background: #092917;
    background: linear-gradient(135deg, transparent .75em, #092917 0) top, linear-gradient(45deg, transparent .75em, #092917 0) bottom;
    color: #219552
}

.page-tag-item.tag4.clickable:hover {
    background: #c0f1d5;
    background: linear-gradient(135deg, transparent .75em, #c0f1d5 0) top, linear-gradient(45deg, transparent .75em, #c0f1d5 0) bottom
}

html[data-theme=dark] .page-tag-item.tag4.clickable:hover {
    background: #0f4224;
    background: linear-gradient(135deg, transparent .75em, #0f4224 0) top, linear-gradient(45deg, transparent .75em, #0f4224 0) bottom
}

.page-tag-item.tag5 {
    background: #e1fcfc;
    background: linear-gradient(135deg, transparent .75em, #e1fcfc 0) top, linear-gradient(45deg, transparent .75em, #e1fcfc 0) bottom;
    color: #16e1e1
}

html[data-theme=dark] .page-tag-item.tag5 {
    background: #042929;
    background: linear-gradient(135deg, transparent .75em, #042929 0) top, linear-gradient(45deg, transparent .75em, #042929 0) bottom;
    color: #0e9595
}

.page-tag-item.tag5.clickable:hover {
    background: #b4f8f8;
    background: linear-gradient(135deg, transparent .75em, #b4f8f8 0) top, linear-gradient(45deg, transparent .75em, #b4f8f8 0) bottom
}

html[data-theme=dark] .page-tag-item.tag5.clickable:hover {
    background: #064242;
    background: linear-gradient(135deg, transparent .75em, #064242 0) top, linear-gradient(45deg, transparent .75em, #064242 0) bottom
}

.page-tag-item.tag6 {
    background: #e4f0fe;
    background: linear-gradient(135deg, transparent .75em, #e4f0fe 0) top, linear-gradient(45deg, transparent .75em, #e4f0fe 0) bottom;
    color: #2589f6
}

html[data-theme=dark] .page-tag-item.tag6 {
    background: #021b36;
    background: linear-gradient(135deg, transparent .75em, #021b36 0) top, linear-gradient(45deg, transparent .75em, #021b36 0) bottom;
    color: #0862c3
}

.page-tag-item.tag6.clickable:hover {
    background: #bbdafc;
    background: linear-gradient(135deg, transparent .75em, #bbdafc 0) top, linear-gradient(45deg, transparent .75em, #bbdafc 0) bottom
}

html[data-theme=dark] .page-tag-item.tag6.clickable:hover {
    background: #042c57;
    background: linear-gradient(135deg, transparent .75em, #042c57 0) top, linear-gradient(45deg, transparent .75em, #042c57 0) bottom
}

.page-tag-item.tag7 {
    background: #f7f1fd;
    background: linear-gradient(135deg, transparent .75em, #f7f1fd 0) top, linear-gradient(45deg, transparent .75em, #f7f1fd 0) bottom;
    color: #bb8ced
}

html[data-theme=dark] .page-tag-item.tag7 {
    background: #2a0b4b;
    background: linear-gradient(135deg, transparent .75em, #2a0b4b 0) top, linear-gradient(45deg, transparent .75em, #2a0b4b 0) bottom;
    color: #9851e4
}

.page-tag-item.tag7.clickable:hover {
    background: #eadbfa;
    background: linear-gradient(135deg, transparent .75em, #eadbfa 0) top, linear-gradient(45deg, transparent .75em, #eadbfa 0) bottom
}

html[data-theme=dark] .page-tag-item.tag7.clickable:hover {
    background: #431277;
    background: linear-gradient(135deg, transparent .75em, #431277 0) top, linear-gradient(45deg, transparent .75em, #431277 0) bottom
}

.page-tag-item.tag8 {
    background: #fdeaf5;
    background: linear-gradient(135deg, transparent .75em, #fdeaf5 0) top, linear-gradient(45deg, transparent .75em, #fdeaf5 0) bottom;
    color: #ef59ab
}

html[data-theme=dark] .page-tag-item.tag8 {
    background: #400626;
    background: linear-gradient(135deg, transparent .75em, #400626 0) top, linear-gradient(45deg, transparent .75em, #400626 0) bottom;
    color: #e81689
}

.page-tag-item.tag8.clickable:hover {
    background: #facbe5;
    background: linear-gradient(135deg, transparent .75em, #facbe5 0) top, linear-gradient(45deg, transparent .75em, #facbe5 0) bottom
}

html[data-theme=dark] .page-tag-item.tag8.clickable:hover {
    background: #670a3d;
    background: linear-gradient(135deg, transparent .75em, #670a3d 0) top, linear-gradient(45deg, transparent .75em, #670a3d 0) bottom
}

.page-info {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    place-content: stretch flex-start;
    color: var(--grey-dark);
    font-size: 14px
}

@media print {
    .page-info {
        display: flex !important
    }
}

.page-info>span {
    display: flex;
    align-items: center;
    max-width: 100%;
    margin-inline-end: .5em;
    line-height: 2
}

@media (min-width: 1440px) {
    .page-info>span {
        font-size: 1.1em
    }
}

@media (max-width: 419px) {
    .page-info>span {
        margin-inline-end: .3em;
        font-size: .875em
    }
}

@media print {
    .page-info>span {
        display: flex !important
    }
}

.page-info .icon {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    margin-inline-end: .25em
}

.page-info a {
    color: inherit
}

.page-info a:hover,
.page-info a:active {
    color: var(--theme-color)
}

.vp-page-title {
    max-width: var(--content-width, 740px);
    margin-inline: auto;
    padding-inline: 2.5rem;
    position: relative;
    z-index: 1;
    padding-top: 1rem;
    padding-bottom: 0
}

@media (max-width: 959px) {
    .vp-page-title {
        padding-inline: 1.5rem
    }
}

@media print {
    .vp-page-title {
        max-width: unset
    }
}

@media print {
    .vp-page-title {
        padding-inline: 0 !important
    }
}

@media (max-width: 959px) {
    .vp-page-title {
        padding-top: .5rem
    }
}

.vp-page-title h1 {
    margin-top: calc(0px - var(--navbar-height)) !important;
    margin-bottom: 1rem;
    padding-top: var(--navbar-height) !important;
    font-size: 2.2rem
}

@media (max-width: 959px) {
    .vp-page-title h1 {
        margin-bottom: .5rem
    }
}

.vp-page-title h1 .icon {
    margin-inline-end: .25em;
    color: var(--theme-color);
    font-size: .9em
}

.vp-page-title h1 img.icon {
    vertical-align: -.125em;
    height: 1em
}

.theme-hope-content:not(.custom) {
    padding-top: 0 !important
}

.theme-hope-content:not(.custom) h1:first-child,
.theme-hope-content:not(.custom) h2:first-child,
.theme-hope-content:not(.custom) h3:first-child,
.theme-hope-content:not(.custom) h4:first-child,
.theme-hope-content:not(.custom) h5:first-child,
.theme-hope-content:not(.custom) h6:first-child {
    margin-top: calc(.5rem - var(--navbar-height)) !important;
    padding-top: var(--navbar-height) !important
}

.theme-hope-content:not(.custom)>h1:first-child {
    display: none
}

.vp-page-meta {
    max-width: var(--content-width, 740px);
    margin-inline: auto;
    padding-inline: 2.5rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    overflow: auto;
    padding-top: .75rem;
    padding-bottom: .75rem
}

@media (max-width: 959px) {
    .vp-page-meta {
        padding-inline: 1.5rem
    }
}

@media print {
    .vp-page-meta {
        max-width: unset
    }
}

@media print {
    .vp-page-meta {
        margin: 0 !important;
        padding-inline: 0 !important
    }
}

@media (max-width: 719px) {
    .vp-page-meta {
        display: block
    }
}

.vp-page-meta .vp-meta-item {
    flex-grow: 1
}

.vp-page-meta .vp-meta-item .vp-meta-label {
    font-weight: 500
}

.vp-page-meta .vp-meta-item .vp-meta-label:not(a) {
    color: var(--text-color-lighter)
}

.vp-page-meta .vp-meta-item .vp-meta-info {
    color: var(--grey-dark);
    font-weight: 400
}

.vp-page-meta .git-info {
    text-align: end
}

.vp-page-meta .edit-link {
    margin-top: .25rem;
    margin-bottom: .25rem;
    margin-inline-end: .5rem;
    font-size: 14px
}

@media print {
    .vp-page-meta .edit-link {
        display: none
    }
}

.vp-page-meta .edit-link .icon {
    position: relative;
    bottom: -.125em;
    width: 1em;
    height: 1em;
    margin-inline-end: .25em
}

.vp-page-meta .update-time,
.vp-page-meta .contributors {
    margin-top: .25rem;
    margin-bottom: .25rem;
    font-size: 14px
}

@media (max-width: 719px) {

    .vp-page-meta .update-time,
    .vp-page-meta .contributors {
        font-size: 13px;
        text-align: start
    }
}

.print-button {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    box-sizing: content-box;
    width: 1rem;
    height: 1rem;
    padding: .5rem;
    border-radius: .25em;
    color: inherit;
    font-size: 1rem;
    transform: translateY(.25rem)
}

@media print {
    .print-button {
        display: none
    }
}

.vp-toc-placeholder {
    margin-inline: auto;
    padding-inline: 2.5rem;
    position: sticky;
    top: calc(var(--navbar-height) + .5rem);
    z-index: 99;
    display: none;
    max-width: var(--content-width, 740px)
}

@media (max-width: 959px) {
    .vp-toc-placeholder {
        padding-inline: 1.5rem
    }
}

@media print {
    .vp-toc-placeholder {
        max-width: unset
    }
}

@media (max-width: 719px) {
    .hide-navbar .vp-toc-placeholder {
        top: .5rem
    }
}

@media (min-width: 1440px) {
    .vp-toc-placeholder {
        top: calc(var(--navbar-height) + 2rem)
    }
}

@media print {
    .vp-toc-placeholder {
        display: none !important
    }
}

.vp-toc-placeholder+.theme-hope-content:not(.custom) {
    padding-top: 0
}

.has-toc .vp-toc-placeholder {
    display: block
}

#toc {
    margin-bottom: 1rem;
    border-radius: 8px;
    background: var(--bg-color-secondary)
}

@media (min-width: 1440px) {
    #toc {
        position: absolute;
        inset-inline-start: calc(100% + 1rem);
        min-width: 10rem;
        max-width: 15rem;
        margin-bottom: 0;
        border-radius: 0;
        background: transparent
    }
}

.vp-toc-header {
    padding: .5rem 1rem;
    font-weight: 600
}

@media (min-width: 1440px) {
    .vp-toc-header {
        padding-top: 0;
        font-size: .875rem
    }
}

.vp-toc-header .arrow {
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    line-height: normal;
    transition: all .3s
}

html[data-theme=dark] .vp-toc-header .arrow {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")
}

.vp-toc-header .arrow.down {
    transform: rotate(180deg)
}

html[dir=rtl] .vp-toc-header .arrow.down {
    transform: rotate(-180deg)
}

.vp-toc-header .arrow.end {
    transform: rotate(90deg)
}

html[dir=rtl] .vp-toc-header .arrow.end,
.vp-toc-header .arrow.start {
    transform: rotate(-90deg)
}

html[dir=rtl] .vp-toc-header .arrow.start {
    transform: rotate(90deg)
}

@media (min-width: 1440px) {
    .vp-toc-header .arrow {
        display: none
    }
}

.vp-toc-header .print-button {
    display: none
}

@media (min-width: 1440px) {
    .vp-toc-header .print-button {
        display: inline-block
    }
}

.vp-toc-wrapper {
    position: relative;
    overflow: hidden auto;
    height: 0;
    max-height: 8rem;
    margin: 0 .5rem;
    padding-inline-start: 8px;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: height .5s;
    scroll-behavior: smooth
}

@media (min-width: 1440px) {
    .vp-toc-wrapper {
        height: auto;
        max-height: 75vh
    }
}

.vp-toc-wrapper.open {
    height: auto;
    margin-top: .5rem;
    padding-bottom: .5rem
}

.vp-toc-wrapper::-webkit-scrollbar-track-piece {
    background: transparent
}

.vp-toc-wrapper::-webkit-scrollbar {
    width: 3px
}

.vp-toc-wrapper::-webkit-scrollbar-thumb:vertical {
    background: #ddd
}

html[data-theme=dark] .vp-toc-wrapper::-webkit-scrollbar-thumb:vertical {
    background: #333
}

.vp-toc-wrapper:before {
    content: " ";
    position: absolute;
    top: 0;
    bottom: 0;
    inset-inline-start: 0;
    z-index: -1;
    width: 2px;
    background: var(--border-color)
}

.vp-toc-list {
    position: relative;
    margin: 0;
    padding: 0
}

.vp-toc-marker {
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    z-index: 2;
    display: none;
    width: 2px;
    height: 1.7rem;
    background: var(--theme-color);
    transition: top var(--transform-transition)
}

@media (min-width: 1440px) {
    .vp-toc-marker {
        display: block
    }
}

.vp-toc-link {
    position: relative;
    display: block;
    overflow: hidden;
    max-width: 100%;
    color: var(--grey-light);
    line-height: inherit;
    text-overflow: ellipsis;
    white-space: nowrap
}

.vp-toc-link.level2 {
    padding-inline-start: 0px;
    font-size: 14px
}

.vp-toc-link.level3 {
    padding-inline-start: 8px;
    font-size: 13px
}

.vp-toc-link.level4 {
    padding-inline-start: 16px;
    font-size: 12px
}

.vp-toc-link.level5 {
    padding-inline-start: 24px;
    font-size: 11px
}

.vp-toc-link.level6 {
    padding-inline-start: 32px;
    font-size: 10px
}

.vp-toc-item {
    position: relative;
    box-sizing: border-box;
    height: 1.7rem;
    list-style: none;
    line-height: 1.7rem
}

@media (min-width: 1440px) {
    .vp-toc-item {
        padding: 0 .5rem
    }
}

.vp-toc-item:hover>.vp-toc-link {
    color: var(--theme-color)
}

.vp-toc-item.active>.vp-toc-link {
    color: var(--theme-color);
    font-weight: 700
}

.vp-page {
    display: block;
    flex-grow: 1;
    padding-bottom: 2rem;
    transition: padding var(--transform-transition)
}

@media print {
    .vp-page {
        min-height: auto !important;
        margin: 0 !important;
        padding: 0 !important
    }
}

.page-cover {
    width: var(--content-width);
    margin-inline: auto
}

@media (max-width: 719px) {
    .page-cover {
        width: 100%
    }
}

.page-cover img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    max-height: 25vh;
    border-radius: .5rem
}

@media (max-width: 719px) {
    .page-cover img {
        border-radius: 0
    }
}

#vp-comment {
    max-width: var(--content-width, 740px);
    margin: 0 auto;
    padding: 2rem 2.5rem
}

@media (max-width: 959px) {
    #vp-comment {
        padding: 1.5rem
    }
}

@media (max-width: 419px) {
    #vp-comment {
        padding: 1rem 1.5rem
    }
}

@media print {
    #vp-comment {
        max-width: unset
    }
}

.vp-skip-link {
    top: .25rem;
    inset-inline-start: .25rem;
    z-index: 999;
    padding: .65rem 1.5rem;
    border-radius: .5rem;
    background: var(--bg-color);
    color: var(--theme-color);
    box-shadow: var(--card-shadow);
    font-weight: 700;
    font-size: .9em;
    text-decoration: none
}

@media print {
    .vp-skip-link {
        display: none
    }
}

.vp-skip-link:focus {
    clip: auto;
    width: auto;
    height: auto;
    clip-path: none
}

.not-found-hint {
    padding: 2rem
}



.not-found-hint .error-title {
    font-weight: 700
}

.not-found-hint .error-hint {
    margin: 0;
    padding: 12px 0;
    font-weight: 600;
    font-size: 20px;
    line-height: 20px;
    letter-spacing: 2px
}

.vp-page.not-found {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100vw;
    max-width: var(--home-page-width);
    margin: 0 auto;
    padding: calc(var(--navbar-height) + 1rem) 1rem 1rem !important;
    text-align: center
}

.vp-page.not-found .action-button {
    display: inline-block;
    box-sizing: border-box;
    margin: .25rem;
    padding: .75rem 1rem;
    border-width: 0;
    border-bottom: 1px solid var(--theme-color-dark);
    border-radius: 3rem;
    background: var(--theme-color);
    color: var(--white);
    outline: none;
    font-size: 1rem;
    transition: background var(--color-transition)
}

.vp-page.not-found .action-button:hover {
    background: var(--theme-color-light);
    cursor: pointer
}

:root {
    --navbar-bg-color: var(--bg-color-float-blur);
    --sidebar-bg-color: var(--bg-color-blur)
}

html[data-theme=dark] {
    --navbar-bg-color: var(--bg-color-blur);
    --sidebar-bg-color: var(--bg-color-blur)
}

#app {
    --code-hl-bg-color: var(--code-highlight-line-color);
    --code-ln-color: var(--code-line-color);
    --code-ln-wrapper-width: var(--line-numbers-width);
    --code-tabs-nav-text-color: var(--code-color);
    --code-tabs-nav-bg-color: var(--code-border-color);
    --code-tabs-nav-hover-color: var(--code-highlight-line-color);
    --sidebar-space: var(--sidebar-width)
}

@media (max-width: 959px) {
    #app {
        --navbar-height: var(--navbar-mobile-height);
        --navbar-vertical-padding: var(--navbar-mobile-vertical-padding);
        --navbar-horizontal-padding: var(--navbar-mobile-horizontal-padding);
        --sidebar-width: var(--sidebar-mobile-width)
    }
}

@media (min-width: 1440px) {
    #app {
        --sidebar-space: clamp(var(--sidebar-width), max(0px, calc((100vw - var(--content-width)) / 2 - 2rem)), 100vw)
    }
}

.vp-copy-code-button {
    --copy-code-color: var(--code-ln-color);
    --copy-code-hover: var(--code-hl-bg-color)
}

.DocSearch-Button,
.DocSearch {
    --docsearch-primary-color: var(--theme-color);
    --docsearch-text-color: var(--text-color);
    --docsearch-highlight-color: var(--theme-color);
    --docsearch-muted-color: var(--grey-light);
    --docsearch-container-background: rgb(9 10 17 / 80%);
    --docsearch-modal-background: var(--bg-color-float);
    --docsearch-searchbox-background: var(--bg-color-secondary);
    --docsearch-searchbox-focus-background: var(--bg-color);
    --docsearch-searchbox-shadow: inset 0 0 0 2px var(--theme-color);
    --docsearch-hit-color: var(--text-color-light);
    --docsearch-hit-active-color: var(--bg-color);
    --docsearch-hit-background: var(--bg-color);
    --docsearch-hit-shadow: 0 1px 3px 0 var(--border-color);
    --docsearch-footer-background: var(--bg-color)
}

html[data-theme=dark] .DocSearch-Button,
html[data-theme=dark] .DocSearch {
    --docsearch-logo-color: var(--text-color);
    --docsearch-modal-shadow: inset 1px 1px 0 0 #2c2e40, 0 3px 8px 0 #000309;
    --docsearch-key-shadow: inset 0 -2px 0 0 #282d55, inset 0 0 1px 1px #51577d, 0 2px 2px 0 rgb(3 4 9 / 30%);
    --docsearch-key-gradient: linear-gradient(-225deg, #444950, #1c1e21);
    --docsearch-footer-shadow: inset 0 1px 0 0 rgb(73 76 106 / 50%), 0 -4px 8px 0 rgb(0 0 0 / 20%)
}

.vp-back-to-top-button {
    --back-to-top-color: var(--theme-color);
    --back-to-top-color-hover: var(--theme-color-light);
    --back-to-top-bg-color: var(--bg-color)
}

.vp-catalog-wrapper {
    --catalog-bg-color: var(--bg-color);
    --catalog-bg-secondary-color: var(--bg-color-light);
    --catalog-border-color: var(--border-color);
    --catalog-active-color: var(--theme-color);
    --catalog-hover-color: var(--theme-color-light)
}

.external-link-icon {
    --external-link-icon-color: var(--grey-light)
}

#nprogress {
    --nprogress-color: var(--theme-color)
}

body {
    --photo-swipe-bullet: var(--white);
    --photo-swipe-bullet-active: var(--theme-color);
    --pwa-text-color: var(--text-color);
    --pwa-bg-color: var(--bg-color);
    --pwa-border-color: var(--border-color);
    --pwa-btn-text-color: var(--bg-color);
    --pwa-btn-bg-color: var(--theme-color);
    --pwa-btn-hover-bg-color: var(--theme-color-light);
    --pwa-shadow-color: var(--card-shadow);
    --pwa-content-color: var(--grey-darker);
    --pwa-content-light-color: var(--grey-dark)
}

.language-modal-mask {
    --redirect-bg-color: var(--bg-color);
    --redirect-bg-color-light: var(--bg-color-light);
    --redirect-bg-color-lighter: var(--bg-color-tertiary);
    --redirect-text-color: var(--text-color);
    --redirect-primary-color: var(--theme-color);
    --redirect-primary-hover-color: var(--theme-color-light);
    --redirect-primary-text-color: var(--white)
}

.search-box {
    --search-bg-color: var(--bg-color);
    --search-accent-color: var(--theme-color);
    --search-text-color: var(--text-color);
    --search-border-color: var(--border-color);
    --search-item-text-color: var(--text-color-lighter);
    --search-item-focus-bg-color: var(--bg-color-secondary)
}

.waline-wrapper {
    --waline-bg-color: var(--bg-color);
    --waline-bg-color-light: var(--bg-color-secondary);
    --waline-text-color: var(--text-color);
    --waline-border: 1px solid var(--border-color);
    --waline-border-color: var(--border-color);
    --waline-theme-color: var(--theme-color);
    --waline-active-color: var(--theme-color-light)
}


html {
    font-size: 16px;
    font-display: optional;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: transparent
}

@media print {
    html {
        font-size: 12pt
    }
}

a {
    color: #3eaf7c;
    font-weight: 500;
    text-decoration: none;
    overflow-wrap: break-word
}

kbd {
    display: inline-block;
    min-width: 1em;
    margin-inline: .125rem;
    padding: .25em;
    border: 1px solid #eee;
    border-radius: .25em;
    box-shadow: 1px 1px 4px #00000026;
    line-height: 1;
    letter-spacing: -.1em;
    text-align: center
}



strong {
    font-weight: 600
}

p,
ul,
ol {
    line-height: 1.6;
    overflow-wrap: break-word
}

@media print {

    p,
    ul,
    ol {
        line-height: 1.5
    }
}

ul,
ol {
    padding-inline-start: 1.2em
}

blockquote {
    margin: 1rem 0;
    padding: .25rem 0 .25rem 1rem;
    border-inline-start: .2rem solid #ddd;
    color: #666;
    font-size: 1rem;
    overflow-wrap: break-word
}

blockquote>p {
    margin: 0
}

hr {
    border: 0;
    border-top: 1px solid #eaecef
}

table {
    display: block;
    overflow-x: auto;
    margin: 1rem 0;
    border-collapse: collapse
}

tr:nth-child(odd) {
    background: #f6f8fa
}

th,
td {
    padding: .6em 1em;
    border: 1px solid #dfe2e5
}

pre {
    direction: ltr
}

@page {
    margin: 2cm;
    font-size: 12pt;
    size: a4
}

@media print {

    *,
    :after,
    :before {
        box-shadow: none !important;
        text-shadow: none !important
    }

    h2,
    h3,
    p {
        orphans: 3;
        widows: 3
    }

    h2,
    h3 {
        page-break-after: avoid
    }

    a {
        color: inherit;
        font-weight: inherit !important;
        font-size: inherit !important;
        text-decoration: underline
    }

    a[href^="http://"]:after,
    a[href^="https://"]:after {
        content: " (" attr(href) ") "
    }

    abbr[title]:after {
        content: " (" attr(title) ")"
    }



    blockquote {
        border-inline-start: .2rem solid #ddd;
        color: inherit
    }

    blockquote,
    pre {
        orphans: 5;
        widows: 5
    }

    img,
    tr,
    canvas {
        page-break-inside: avoid
    }
}

@font-face {
    font-weight: 400;
    font-style: normal;
    font-family: Crimson;
    src: url(data:font/truetype;charset=utf-8;base64,AAEAAAANAIAAAwBQRkZUTYr5mwEAAAyMAAAAHEdERUYAKQATAAAMbAAAAB5PUy8yVsJ0MgAAAVgAAABgY21hcBiKDzgAAAHcAAABWGdhc3D//wADAAAMZAAAAAhnbHlmr+DBdQAAA1AAAAdsaGVhZBZwt+8AAADcAAAANmhoZWEFawEuAAABFAAAACRobXR4BksA9gAAAbgAAAAibG9jYQlsC24AAAM0AAAAHG1heHAAEQBZAAABOAAAACBuYW1lLaFDVAAACrwAAAFrcG9zdAC1AHoAAAwoAAAAPAABAAAAAQAAqBd2H18PPPUACwQAAAAAANqqufwAAAAA2qq5/AAb/9wB4QMeAAAACAACAAAAAAAAAAEAAAMs/ywAXAH9AAAAAAHhAAEAAAAAAAAAAAAAAAAAAAAEAAEAAAANAFkAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAH1AZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAIABgMAAAAAAAAAAAABEAAAAAAAAAAAAAAAUGZFZADAADAAOQMs/ywAXAMsANQAAAABAAAAAAMYAAAAAAAgAAEBpwAfAAAAAAFVAAAB/QAfAH0ALQA+ABsAPgAyACgAPgAxAAAAAAADAAAAAwAAABwAAQAAAAAAUgADAAEAAAAcAAQANgAAAAQABAABAAAAOf//AAAAL///AAAAAQAEAAAAAAADAAQABQAGAAcACAAJAAoACwAMAAABBgAAAQAAAAAAAAABAgAAAAIAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAwQFBgcICQoLDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACYAJgAmAGIAwAEeAZIBzgJAApYC2gNiA7YAAQAf/9wBhwMeABIAAAEGBwYHATAXFjM2NzY3ASYnJjcBgxwLCgH+zgMECxIKCgIBLgEDAwMDHhQFBgP85wMEAQgJBgMOAwMDEwAAAAIAH//9Ad0CkAAQACEAABMWFxYXNjc2NzQnJicGBwYHNyY3NjcWFxYXFAcGByYnJjcfATo6amo7OQE5OmxrOjkBXQIlJEE5IyIBIyJEOSQjAgFOkV5eBAReXoqJXl4EBF5eggJ0UlEDA09Qe3xVVgMDU1OEAAAAAAEAff/9AYACkQA+AAA3FAcGBwYHBiMGFQYXNjc2MzIXFhc2JzQnIicmJyY1JjURNjc2MSYnJicjBgcGBwYVFBUUFxYXNjc2NzIXFhXkAQEEBRgYDAMBBB4ZGhweGxofBAEDDBgZBQQBAQMEAQIDBAIFNTZCAgMDBA0XFw0LBQV3GBMVDAgEBAUKCgUCAQICAQIFCgoFBAQIDBUTGAGnLxkbBAYFAQIZGh4BAgECBQUEAwUHBwEICRYAAAAAAQAtAAAB0QKRADoAADcGFxYXITY3NjcmJyYjIgcGBwYHBisBNjc2NzY3NjUmJyYnBgcGBxQXFhc2NzY3FhcWFxYHBgcGBwYHLgEEAwMBYwURERADBwYFBAMDAg8VEx/LJkBAOhsQDwIxMkxSMjIHCAYGCSYmPTIfHwEBCgoeLkJBQg8EBQQCETAwKQICAgEBBCgUEylJSUYhJicsRDIzAgY1NRoEBQYBEyEhAwEjIjYlJCQtQlBQSAAAAAABAD7/+wG+ApEASgAANwYXFhcWFxYzNjc2NyYnJic2NzY3JicmIwYHBgcUFxYXNjc2NxYXFhcGBwYHBgcUFRQXNjc2NxYXFhcGBwYnIicmJyYnJiciBwYXPwEIBwUaHB0VZU5NBAMvLi8eIB4DAywsKzwrKxgEAwUIHR4wLRscAQMvLz8BAQYKEhEQNSYmAgImJSsWExQPCw0NFREMDQE7DgsLBQwFBgE8PWpMKSoGECQkMkAiIQIdHyUHBwcBCRscAwEbGSpCIyUOAgMCAwwIAwUEAQEoKD9XJSQBBQYODg8PAQ0NFQAAAgAb//oB4QKTACIAJQAANxQXFhchFRQXFjMyNzYjNTM2NzY1NCcmJyMRNCcmIwYHBgcBExEbAgMFASEJCRIdCAkBRgIBAQUEBTwFAwgHCQkG/vjmxgUGBgOwBQIBAwKzAgQDCBAMDQEBlAYGBgEICQf+cwEs/tQAAQA+//sBvgKTAEoAADcGFxYXFhcWMzY3NjcmJyYnIgcGBzY3NjczMjc2NzY3NjU0JyYnBgcGByMGBwYHFBcWMzY3NjMWFxYHBgcGJyInJicmJyYnIgcGFz8BCAcFGhwdFWVOTQQBMjJbFx8gFwoJCQlWKB0dFQ4JCAQDBQMdHSKXCREQEgMCBA4bGhNYJyUBAiYlKxYTFA8LDQ0VEQwNATsOCwsFDAUGATw9akU2NwMFBggrMC8uAgICExcZBgQCAgMBAwQBMVNUWAUFBAYFBAMxMTNZIyQBBQYODg8PAQ0NFQAAAgAy//oBzQKXACAAMwAANxQXFhc2NzY3NicmJyIHBgc2NzY3NCcmJwYHBgcGBwYXNyY3Njc2FxYXFgcGBwYHJicmNzM1NV5aOTsCAioqahoiIRsnWFhFAwIHQ0tMOTAZGQFbBAQaGxkXRB8fAQEfIDE9Hh4E511FRwQDPT1ZPEJBBQwLF4Y9PRMGCwwBEiwsPDZFRkkTHyAbCAcBAjAwREYsLQEFREVQAAAAAAEAKP/7AdUCiwApAAATFhcWMzI3Njc2NzYzIQYHBgcWFxYzMjcBNjc2NzQnJiMiBwYjIQYHBgcoAwYHAwYDAwELEBEdAQUJYWJXAQ8PDgcDAQ4LCQgBAQEEBhUVFv7JBgsNDAH6DQMCAQEFKRITFMjHjQcFBgMCPxYSEwoEAgMBAhkrKiAAAAADAD7/9wG/ApIAKABBAFgAADcGFxYXNjc2NyYnJicmJzQ3Njc2NyYnJiMGBwYHFhcWFxYVFAcGBwYHNyY3Njc2MzIzMhcyFxYXFhcGBwYHIicmNxMmNzY3FhcWFRQHBgcGByIjIicmJyY3PwE1M1ZQODgDAykpMQIBAyYlJQMCMC9HRjExAgIiIiMCAiMvLwNTBBQTKgEBAQECAQIBEjU1CAEdHjMrISICGAMYGSYvGxoTEx8CAQIBBAMfJCQBoU8tLQECMjFPOC4uGwIBAgEWJiU7SCYoAjEwQzopKhMBAgECEykpQAQsIiEbAQEBBywsQjUeHQEiI0QBZSMhIAECJiYvKh8gFAEBAhAfIEYAAAIAMf/6AcsClwAgADMAABMGFxYXMjc2NwYHBgcUFxYXNjc2NzY3NjUmJyYnBgcGBzcmNzY3FhcWFRQHBgcGJyYnJjc0AyopahoiIRsoV1hFAwIHQ0tMODEZGQE2NF5ZOjoBWgMfHzE9Hh4EGhoaF0QeHwUBy0dBQgUMCxeFPj0SBwsLAREsLD01RkVPV0dFBQQ8PU8UPCwtAQVFRUklIRsHCAECMDBPAAAADACWAAEAAAAAAAEABwAQAAEAAAAAAAIABwAoAAEAAAAAAAMABwBAAAEAAAAAAAQABwBYAAEAAAAAAAUAHgCeAAEAAAAAAAYABwDNAAMAAQQJAAEADgAAAAMAAQQJAAIADgAYAAMAAQQJAAMADgAwAAMAAQQJAAQADgBIAAMAAQQJAAUAPABgAAMAAQQJAAYADgC9AEMAcgBpAG0AcwBvAG4AAENyaW1zb24AAEMAcgBpAG0AcwBvAG4AAENyaW1zb24AAEMAcgBpAG0AcwBvAG4AAENyaW1zb24AAEMAcgBpAG0AcwBvAG4AAENyaW1zb24AAFYAZQByAHMAaQBvAG4AIAAxAC4AMAA7ACAARgBvAG4AdABFAGQAaQB0AG8AcgAgACgAdgAxAC4AMAApAABWZXJzaW9uIDEuMDsgRm9udEVkaXRvciAodjEuMCkAAEMAcgBpAG0AcwBvAG4AAENyaW1zb24AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAABAAIAEwAUABUAFgAXABgAGQAaABsAHAAAAAH//wACAAEAAAAMAAAAFgAAAAIAAQADAAwAAQAEAAAAAgAAAAAAAAABAAAAANWkJwgAAAAA2qq5/AAAAADaqrn8) format("truetype")
}


:root {
    color-scheme: light
}

html[data-theme=dark] {
    color-scheme: dark
}


@media (min-width: 1440px) {
    body {
        font-size: 17px
    }
}

a {
    color: var(--theme-color)
}

kbd {
    border-color: var(--border-color-dark);
    background: var(--bg-color-secondary);
    font-family: var(--font-family-mono)
}

code {
    font-family: var(--font-family-mono)
}

html[data-theme=dark] code {
    background: #333
}

blockquote {
    border-color: #eee;
    color: #666
}

html[data-theme=dark] blockquote {
    border-color: #333
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-family-heading)
}

@media (max-width: 419px) {
    h1 {
        font-size: 1.9rem
    }
}

h2,
hr {
    border-color: var(--border-color)
}

tr:nth-child(odd) {
    background: var(--bg-color-secondary)
}

th,
td {
    border-color: var(--border-color-dark)
}

@media print {
    @page {
        --text-color: #000 !important;
        --bg-color: #fff !important
    }

    div[class*=language-] {
        position: relative !important
    }
}

.theme-hope-content pre {
    overflow: auto;
    margin: .85rem 0;
    padding: 1rem;
    border-radius: 6px;
    line-height: 1.375
}

.theme-hope-content pre code {
    padding: 0;
    border-radius: 0;
    background: transparent !important;
    color: var(--code-color);
    font-family: var(--font-family-mono);
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-wrap: normal;
    word-break: normal;
    overflow-wrap: unset;
    -webkit-hyphens: none;
    hyphens: none;
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto
}

@media print {
    .theme-hope-content pre code {
        white-space: pre-wrap
    }
}

.theme-hope-content .line-number {
    font-family: var(--font-family-mono)
}

div[class*=language-] {
    position: relative;
    border-radius: 6px;
    background: var(--code-bg-color);
    font-size: 16px
}

@media (max-width: 419px) {
    .theme-hope-content>div[class*=language-] {
        margin: .85rem -1.5rem;
        border-radius: 0
    }
}

div[class*=language-]:before {
    content: attr(data-title);
    position: absolute;
    top: 0;
    right: 1em;
    z-index: 3;
    color: var(--code-line-color);
    font-size: .75rem
}

div[class*=language-] pre {
    position: relative;
    z-index: 1;
    scrollbar-gutter: stable
}

div[class*=language-] .highlight-lines {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1rem 0;
    line-height: 1.375;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

div[class*=language-] .highlight-line {
    background: var(--code-highlight-line-color)
}

div[class*=language-].line-numbers-mode:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: var(--line-numbers-width);
    border-right: 1px solid var(--code-highlight-line-color);
    border-radius: 6px 0 0 6px
}

@media (max-width: 419px) {
    div[class*=language-].line-numbers-mode:after {
        border-radius: 0
    }
}

@media print {
    div[class*=language-].line-numbers-mode:after {
        display: none
    }
}

div[class*=language-].line-numbers-mode .highlight-line {
    position: relative
}

div[class*=language-].line-numbers-mode .highlight-line:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    display: block;
    width: var(--line-numbers-width);
    height: 100%
}

div[class*=language-].line-numbers-mode pre {
    vertical-align: middle;
    margin-left: var(--line-numbers-width);
    padding-left: .5rem
}

@media print {
    div[class*=language-].line-numbers-mode pre {
        margin-left: 0;
        padding-left: 1rem
    }
}

div[class*=language-].line-numbers-mode .line-numbers {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    width: var(--line-numbers-width);
    padding: 1rem 0;
    color: var(--code-line-color);
    counter-reset: line-number;
    text-align: center
}

@media print {
    div[class*=language-].line-numbers-mode .line-numbers {
        display: none
    }
}

div[class*=language-].line-numbers-mode .line-number {
    position: relative;
    z-index: 4;
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

div[class*=language-].line-numbers-mode .line-number:before {
    content: counter(line-number);
    display: block;
    font-size: .8em;
    line-height: 1;
    counter-increment: line-number
}

div[class*=language-]:not(.line-numbers-mode) .line-numbers {
    display: none
}

html[data-theme=light] #app {
    --code-color: #383a42;
    --code-line-color: rgba(56, 58, 66, .67);
    --code-bg-color: #ecf4fa;
    --code-border-color: #c3def3;
    --code-highlight-line-color: #d8e9f6
}

html[data-theme=light] code[class*=language-],
html[data-theme=light] pre[class*=language-] {
    -moz-tab-size: 2;
    -o-tab-size: 2;
    tab-size: 2
}

html[data-theme=light] code[class*=language-]::-moz-selection,
html[data-theme=light] code[class*=language-] ::-moz-selection,
html[data-theme=light] pre[class*=language-]::-moz-selection,
html[data-theme=light] pre[class*=language-] ::-moz-selection {
    background: #e5e5e6;
    color: inherit
}

html[data-theme=light] code[class*=language-]::selection,
html[data-theme=light] code[class*=language-] ::selection,
html[data-theme=light] pre[class*=language-]::selection,
html[data-theme=light] pre[class*=language-] ::selection {
    background: #e5e5e6;
    color: inherit
}

html[data-theme=light] .token.comment,
html[data-theme=light] .token.prolog,
html[data-theme=light] .token.cdata {
    color: #a0a1a7
}

html[data-theme=light] .token.doctype,
html[data-theme=light] .token.punctuation,
html[data-theme=light] .token.entity {
    color: #383a42
}

html[data-theme=light] .token.attr-name,
html[data-theme=light] .token.class-name,
html[data-theme=light] .token.boolean,
html[data-theme=light] .token.constant,
html[data-theme=light] .token.number,
html[data-theme=light] .token.atrule {
    color: #b76b01
}

html[data-theme=light] .token.keyword {
    color: #a626a4
}

html[data-theme=light] .token.property,
html[data-theme=light] .token.tag,
html[data-theme=light] .token.symbol,
html[data-theme=light] .token.deleted,
html[data-theme=light] .token.important {
    color: #e45649
}

html[data-theme=light] .token.selector,
html[data-theme=light] .token.string,
html[data-theme=light] .token.char,
html[data-theme=light] .token.builtin,
html[data-theme=light] .token.inserted,
html[data-theme=light] .token.regex,
html[data-theme=light] .token.attr-value,
html[data-theme=light] .token.attr-value>.token.punctuation {
    color: #50a14f
}

html[data-theme=light] .token.variable,
html[data-theme=light] .token.operator,
html[data-theme=light] .token.function {
    color: #4078f2
}

html[data-theme=light] .token.url {
    color: #0184bc
}

html[data-theme=light] .token.attr-value>.token.punctuation.attr-equals,
html[data-theme=light] .token.special-attr>.token.attr-value>.token.value.css {
    color: #383a42
}

html[data-theme=light] .language-css .token.selector {
    color: #e45649
}

html[data-theme=light] .language-css .token.property {
    color: #383a42
}

html[data-theme=light] .language-css .token.function,
html[data-theme=light] .language-css .token.url>.token.function {
    color: #0184bc
}

html[data-theme=light] .language-css .token.url>.token.string.url {
    color: #50a14f
}

html[data-theme=light] .language-css .token.important,
html[data-theme=light] .language-css .token.atrule .token.rule,
html[data-theme=light] .language-javascript .token.operator {
    color: #a626a4
}

html[data-theme=light] .language-javascript .token.template-string>.token.interpolation>.token.interpolation-punctuation.punctuation {
    color: #ca1243
}

html[data-theme=light] .language-json .token.operator {
    color: #383a42
}

html[data-theme=light] .language-json .token.null.keyword {
    color: #b76b01
}

html[data-theme=light] .language-markdown .token.url,
html[data-theme=light] .language-markdown .token.url>.token.operator,
html[data-theme=light] .language-markdown .token.url-reference.url>.token.string {
    color: #383a42
}

html[data-theme=light] .language-markdown .token.url>.token.content {
    color: #4078f2
}

html[data-theme=light] .language-markdown .token.url>.token.url,
html[data-theme=light] .language-markdown .token.url-reference.url {
    color: #0184bc
}

html[data-theme=light] .language-markdown .token.blockquote.punctuation,
html[data-theme=light] .language-markdown .token.hr.punctuation {
    color: #a0a1a7;
    font-style: italic
}

html[data-theme=light] .language-markdown .token.code-snippet {
    color: #50a14f
}

html[data-theme=light] .language-markdown .token.bold .token.content {
    color: #b76b01
}

html[data-theme=light] .language-markdown .token.italic .token.content {
    color: #a626a4
}

html[data-theme=light] .language-markdown .token.strike .token.content,
html[data-theme=light] .language-markdown .token.strike .token.punctuation,
html[data-theme=light] .language-markdown .token.list.punctuation,
html[data-theme=light] .language-markdown .token.title.important>.token.punctuation {
    color: #e45649
}

html[data-theme=light] .token.bold {
    font-weight: 700
}

html[data-theme=light] .token.comment,
html[data-theme=light] .token.italic {
    font-style: italic
}

html[data-theme=light] .token.entity {
    cursor: help
}

html[data-theme=light] .token.namespace {
    opacity: .8
}

html[data-theme=dark] #app {
    --code-color: #abb2bf;
    --code-line-color: rgba(171, 178, 191, .67);
    --code-bg-color: #282c34;
    --code-border-color: #343e51;
    --code-highlight-line-color: #2f3542
}

html[data-theme=dark] code[class*=language-],
html[data-theme=dark] pre[class*=language-] {
    text-shadow: 0 1px rgba(0, 0, 0, .3);
    -moz-tab-size: 2;
    -o-tab-size: 2;
    tab-size: 2
}

@media print {

    html[data-theme=dark] code[class*=language-],
    html[data-theme=dark] pre[class*=language-] {
        text-shadow: none
    }
}

html[data-theme=dark] code[class*=language-]::-moz-selection,
html[data-theme=dark] code[class*=language-] ::-moz-selection,
html[data-theme=dark] pre[class*=language-]::-moz-selection,
html[data-theme=dark] pre[class*=language-] ::-moz-selection {
    background: #3e4451;
    color: inherit;
    text-shadow: none
}

html[data-theme=dark] code[class*=language-]::selection,
html[data-theme=dark] code[class*=language-] ::selection,
html[data-theme=dark] pre[class*=language-]::selection,
html[data-theme=dark] pre[class*=language-] ::selection {
    background: #3e4451;
    color: inherit;
    text-shadow: none
}

html[data-theme=dark] .token.comment,
html[data-theme=dark] .token.prolog,
html[data-theme=dark] .token.cdata {
    color: #5c6370
}

html[data-theme=dark] .token.doctype,
html[data-theme=dark] .token.punctuation,
html[data-theme=dark] .token.entity {
    color: #abb2bf
}

html[data-theme=dark] .token.attr-name,
html[data-theme=dark] .token.class-name,
html[data-theme=dark] .token.boolean,
html[data-theme=dark] .token.constant,
html[data-theme=dark] .token.number,
html[data-theme=dark] .token.atrule {
    color: #d19a66
}

html[data-theme=dark] .token.keyword {
    color: #c678dd
}

html[data-theme=dark] .token.property,
html[data-theme=dark] .token.tag,
html[data-theme=dark] .token.symbol,
html[data-theme=dark] .token.deleted,
html[data-theme=dark] .token.important {
    color: #e06c75
}

html[data-theme=dark] .token.selector,
html[data-theme=dark] .token.string,
html[data-theme=dark] .token.char,
html[data-theme=dark] .token.builtin,
html[data-theme=dark] .token.inserted,
html[data-theme=dark] .token.regex,
html[data-theme=dark] .token.attr-value,
html[data-theme=dark] .token.attr-value>.token.punctuation {
    color: #98c379
}

html[data-theme=dark] .token.variable,
html[data-theme=dark] .token.operator,
html[data-theme=dark] .token.function {
    color: #61afef
}

html[data-theme=dark] .token.url {
    color: #56b6c2
}

html[data-theme=dark] .token.attr-value>.token.punctuation.attr-equals,
html[data-theme=dark] .token.special-attr>.token.attr-value>.token.value.css {
    color: #abb2bf
}

html[data-theme=dark] .language-css .token.selector {
    color: #e06c75
}

html[data-theme=dark] .language-css .token.property {
    color: #abb2bf
}

html[data-theme=dark] .language-css .token.function,
html[data-theme=dark] .language-css .token.url>.token.function {
    color: #56b6c2
}

html[data-theme=dark] .language-css .token.url>.token.string.url {
    color: #98c379
}

html[data-theme=dark] .language-css .token.important,
html[data-theme=dark] .language-css .token.atrule .token.rule,
html[data-theme=dark] .language-javascript .token.operator {
    color: #c678dd
}

html[data-theme=dark] .language-javascript .token.template-string>.token.interpolation>.token.interpolation-punctuation.punctuation {
    color: #be5046
}

html[data-theme=dark] .language-json .token.operator {
    color: #abb2bf
}

html[data-theme=dark] .language-json .token.null.keyword {
    color: #d19a66
}

html[data-theme=dark] .language-markdown .token.url,
html[data-theme=dark] .language-markdown .token.url>.token.operator,
html[data-theme=dark] .language-markdown .token.url-reference.url>.token.string {
    color: #abb2bf
}

html[data-theme=dark] .language-markdown .token.url>.token.content {
    color: #61afef
}

html[data-theme=dark] .language-markdown .token.url>.token.url,
html[data-theme=dark] .language-markdown .token.url-reference.url {
    color: #56b6c2
}

html[data-theme=dark] .language-markdown .token.blockquote.punctuation,
html[data-theme=dark] .language-markdown .token.hr.punctuation {
    color: #5c6370;
    font-style: italic
}

html[data-theme=dark] .language-markdown .token.code-snippet {
    color: #98c379
}

html[data-theme=dark] .language-markdown .token.bold .token.content {
    color: #d19a66
}

html[data-theme=dark] .language-markdown .token.italic .token.content {
    color: #c678dd
}

html[data-theme=dark] .language-markdown .token.strike .token.content,
html[data-theme=dark] .language-markdown .token.strike .token.punctuation,
html[data-theme=dark] .language-markdown .token.list.punctuation,
html[data-theme=dark] .language-markdown .token.title.important>.token.punctuation {
    color: #e06c75
}

html[data-theme=dark] .token.bold {
    font-weight: 700
}

html[data-theme=dark] .token.comment,
html[data-theme=dark] .token.italic {
    font-style: italic
}

html[data-theme=dark] .token.entity {
    cursor: help
}

html[data-theme=dark] .token.namespace {
    opacity: .8
}

.sr-only {
    position: absolute;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border-width: 0;
    white-space: nowrap;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

@media print {
    .theme-hope-content {
        margin: 0 !important;
        padding-inline: 0 !important
    }
}

.theme-hope-content.custom {
    margin: 0;
    padding: 0
}

.theme-hope-content:not(.custom) {
    max-width: var(--content-width, 740px);
    margin: 0 auto;
    padding: 2rem 2.5rem;
    padding-top: 0
}

@media (max-width: 959px) {
    .theme-hope-content:not(.custom) {
        padding: 1.5rem
    }
}

@media (max-width: 419px) {
    .theme-hope-content:not(.custom) {
        padding: 1rem 1.5rem
    }
}

@media print {
    .theme-hope-content:not(.custom) {
        max-width: unset
    }
}

.theme-hope-content:not(.custom)>h1,
.theme-hope-content:not(.custom)>h2,
.theme-hope-content:not(.custom)>h3,
.theme-hope-content:not(.custom)>h4,
.theme-hope-content:not(.custom)>h5,
.theme-hope-content:not(.custom)>h6 {
    margin-top: calc(.5rem - var(--navbar-height));
    margin-bottom: .5rem;
    padding-top: calc(1rem + var(--navbar-height));
    outline: none
}

.theme-container.no-navbar .theme-hope-content:not(.custom)>h1,
.theme-container.no-navbar .theme-hope-content:not(.custom)>h2,
.theme-container.no-navbar .theme-hope-content:not(.custom)>h3,
.theme-container.no-navbar .theme-hope-content:not(.custom)>h4,
.theme-container.no-navbar .theme-hope-content:not(.custom)>h5,
.theme-container.no-navbar .theme-hope-content:not(.custom)>h6 {
    margin-top: 1.5rem;
    padding-top: 0
}

.theme-hope-content:not(.custom)>p,
.theme-hope-content:not(.custom)>ul p,
.theme-hope-content:not(.custom)>ol p {
    text-align: justify;
    overflow-wrap: break-word;
    -webkit-hyphens: auto;
    hyphens: auto
}

@media (max-width: 419px) {

    .theme-hope-content:not(.custom)>p,
    .theme-hope-content:not(.custom)>ul p,
    .theme-hope-content:not(.custom)>ol p {
        text-align: start
    }
}

@media print {

    .theme-hope-content:not(.custom)>p,
    .theme-hope-content:not(.custom)>ul p,
    .theme-hope-content:not(.custom)>ol p {
        text-align: start
    }
}

.theme-hope-content a:not(.header-anchor):hover {
    text-decoration: underline
}

.theme-hope-content img {
    max-width: 100%
}

::view-transition-old(root),
::view-transition-new(root) {
    animation: none;
    mix-blend-mode: normal
}

html[data-theme=light]::view-transition-old(root),
html[data-theme=dark]::view-transition-new(root) {
    z-index: 1
}

html[data-theme=light]::view-transition-new(root),
html[data-theme=dark]::view-transition-old(root) {
    z-index: 99999
}

@media (min-width: 1280px) {

    .chart-wrapper::-webkit-scrollbar,
    .flowchart-wrapper::-webkit-scrollbar,
    .mermaid-wrapper::-webkit-scrollbar {
        width: 8px;
        height: 8px
    }

    .chart-wrapper::-webkit-scrollbar-track-piece,
    .flowchart-wrapper::-webkit-scrollbar-track-piece,
    .mermaid-wrapper::-webkit-scrollbar-track-piece {
        border-radius: 8px;
        background: #0000001a
    }
}

html[dir=rtl] a.header-anchor:before {
    right: -.75em
}

#docsearch-container {
    min-width: 145.7px !important
}

@media (max-width: 959px) {
    #docsearch-container {
        min-width: 36px !important
    }
}

.DocSearch.DocSearch-Button {
    margin-left: 0
}

@media (max-width: 959px) {
    .DocSearch.DocSearch-Button {
        min-width: 36px !important
    }
}

.DocSearch .DocSearch-Button-Placeholder {
    display: inline-block;
    padding: 4px 12px 4px 6px;
    font-size: 14px
}

@media (max-width: 719px) {
    .DocSearch .DocSearch-Button-Placeholder {
        display: none
    }
}

.DocSearch .DocSearch-Search-Icon {
    width: 1.25em;
    height: 1.25em
}

@media (max-width: 959px) {
    .DocSearch .DocSearch-Button-Keys {
        display: none
    }
}

.DocSearch .DocSearch-Button-Key {
    background: var(--bg-color);
    box-shadow: none
}

:root {
    scrollbar-width: thin
}

@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: smooth
    }
}

::-webkit-scrollbar {
    width: 6px;
    height: 6px
}

::-webkit-scrollbar-track-piece {
    border-radius: 6px;
    background: #0000001a
}

::-webkit-scrollbar-thumb {
    border-radius: 6px;
    background: var(--theme-color)
}

::-webkit-scrollbar-thumb:active {
    background: var(--theme-color-light)
}

@media (max-width: 719px) {
    .hide-in-mobile {
        display: none !important
    }
}

@media (max-width: 959px) {
    .hide-in-pad {
        display: none !important
    }
}

.markdown-alert {
    padding: 8px 16px;
    margin-bottom: 16px;
    color: inherit;
    border-left: .25em solid var(--border-color)
}

.markdown-alert>:first-child {
    margin-top: 0
}

.markdown-alert>:last-child {
    margin-bottom: 0
}

.markdown-alert .markdown-alert-title {
    display: flex;
    font-weight: var(--base-text-weight-medium, 500);
    align-items: center;
    position: relative
}

.markdown-alert .markdown-alert-title:before {
    content: " ";
    width: 16px;
    height: 16px;
    margin-right: 8px;
    background-position: left;
    background-repeat: no-repeat
}

@media print {
    .markdown-alert .markdown-alert-title:before {
        display: none
    }
}

.markdown-alert.markdown-alert-note {
    border-left-color: #2f81f7
}

.markdown-alert.markdown-alert-note .markdown-alert-title {
    color: #2f81f7
}

.markdown-alert.markdown-alert-note .markdown-alert-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%232f81f7' d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'/%3E%3C/svg%3E")
}

.markdown-alert.markdown-alert-important {
    border-left-color: #a371f7
}

.markdown-alert.markdown-alert-important .markdown-alert-title {
    color: #a371f7
}

.markdown-alert.markdown-alert-important .markdown-alert-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23a371f7' d='M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'/%3E%3C/svg%3E")
}

.markdown-alert.markdown-alert-tip {
    border-left-color: #3fb950
}

.markdown-alert.markdown-alert-tip .markdown-alert-title {
    color: #3fb950
}

.markdown-alert.markdown-alert-tip .markdown-alert-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%233fb950' d='M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z'/%3E%3C/svg%3E")
}

.markdown-alert.markdown-alert-warning {
    border-left-color: #d29922
}

.markdown-alert.markdown-alert-warning .markdown-alert-title {
    color: #d29922
}

.markdown-alert.markdown-alert-warning .markdown-alert-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23d29922' d='M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'/%3E%3C/svg%3E")
}

.markdown-alert.markdown-alert-caution {
    border-left-color: #f85149
}

.markdown-alert.markdown-alert-caution .markdown-alert-title {
    color: #f85149
}

.markdown-alert.markdown-alert-caution .markdown-alert-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23f85149' d='M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'/%3E%3C/svg%3E")
}

:root {
    --hint-title-color: #003100;
    --hint-bg-color: #e6f6e6;
    --hint-border-color: #009400
}

html[data-theme=dark] {
    --hint-title-color: #e6f6e6;
    --hint-bg-color: #003100
}

.custom-container.hint {
    position: relative;
    transition: background var(--color-transition), border-color var(--color-transition), color var(--color-transition);
    margin: 1rem 0;
    padding: .25rem 1rem;
    border-left-width: .3rem;
    border-left-style: solid;
    border-radius: .5rem;
    color: inherit;
    border-color: var(--hint-border-color);
    background: var(--hint-bg-color)
}

@media print {
    .custom-container.hint {
        page-break-inside: avoid
    }
}

.custom-container.hint .custom-container-title {
    position: relative;
    font-weight: 600;
    line-height: 1.25;
    color: var(--hint-title-color);
    padding-left: 1.5rem
}

@media print {
    .custom-container.hint .custom-container-title {
        padding-left: 0
    }
}

.custom-container.hint .custom-container-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 16'%3E%3Cpath fill='%23003100' fill-rule='evenodd' d='M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z'/%3E%3C/svg%3E");
    content: " ";
    position: absolute;
    left: 0;
    width: 20px;
    height: 20px;
    background-position: left;
    background-repeat: no-repeat
}

html[data-theme=dark] .custom-container.hint .custom-container-title:before {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 16'%3E%3Cpath fill='%23e6f6e6' fill-rule='evenodd' d='M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z'/%3E%3C/svg%3E")
}

@media print {
    .custom-container.hint .custom-container-title:before {
        display: none
    }
}

.custom-container.hint p {
    line-height: 1.5
}

.custom-container.hint a {
    color: var(--c-brand, #3eaf7c)
}

.search-pro-button {
    border-width: 0;
    background: transparent;
    display: inline-flex;
    align-items: center;
    box-sizing: content-box;
    height: 1.25rem;
    margin-inline: 1rem 0;
    margin-top: 0;
    margin-bottom: 0;
    padding: .5rem;
    border: 0;
    border: 1px solid var(--vp-bgl);
    border-radius: 1rem;
    background: var(--vp-bgl);
    color: var(--vp-c);
    font-weight: 500;
    cursor: pointer;
    transition: background var(--vp-ct), color var(--vp-ct)
}

@media print {
    .search-pro-button {
        display: none
    }
}

@media (max-width: 959px) {
    .search-pro-button {
        border-radius: 50%
    }
}

.search-pro-button:hover {
    border: 1px solid var(--vp-tc);
    background-color: var(--vp-bglt);
    color: var(--vp-clt)
}

.search-pro-button .search-icon {
    width: 1.25rem;
    height: 1.25rem
}

.search-pro-placeholder {
    margin-inline: .25rem;
    font-size: 1rem
}

@media (max-width: 959px) {
    .search-pro-placeholder {
        display: none
    }
}

.search-pro-key-hints {
    font-size: .75rem
}

@media (max-width: 959px) {
    .search-pro-key-hints {
        display: none
    }
}

.search-pro-key {
    display: inline-block;
    min-width: 1em;
    margin-inline: .125rem;
    padding: .25rem;
    border: 1px solid var(--vp-brc);
    border-radius: 4px;
    box-shadow: 1px 1px 4px 0 var(--card-shadow);
    line-height: 1;
    letter-spacing: -.1em;
    transition: background var(--vp-ct), color var(--vp-ct), border var(--vp-ct) box-shadow var(--vp-ct)
}

@keyframes search-pro-fade-in {
    0% {
        opacity: .2
    }

    to {
        opacity: 1
    }
}

.search-pro-modal-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 997;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: auto;
    cursor: default
}

.search-pro-mask {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 998;
    animation: .25s search-pro-fade-in;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px)
}

.search-pro-modal {
    position: absolute;
    z-index: 999;
    display: flex;
    flex-direction: column;
    width: calc(100% - 6rem);
    max-width: 50em;
    border-radius: 10px;
    background: var(--vp-bg);
    box-shadow: 2px 2px 10px 0 var(--card-shadow);
    transition: background var(--vp-ct);
    animation: .15s pwa-opened
}

@media (max-width: 1280px) {
    .search-pro-modal {
        animation: .25s pwa-mobile
    }
}

@media (max-width: 719px) {
    .search-pro-modal {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        box-sizing: border-box;
        width: 100%;
        max-width: unset;
        padding: env(--safe-area-inset-top) env(--safe-area-inset-right) env(--safe-area-inset-bottom) env(--safe-area-inset-left)
    }
}

.search-pro-box {
    display: flex;
    margin: 1rem
}

.search-pro-box form {
    position: relative;
    display: flex;
    flex: 1
}

.search-pro-box label {
    position: absolute;
    top: calc(50% - .75rem);
    inset-inline-start: .5rem;
    color: var(--vp-tc)
}

.search-pro-box label .search-icon {
    width: 1.5rem;
    height: 1.5rem
}

.search-pro-clear-button {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    position: absolute;
    top: calc(50% - 10px);
    inset-inline-end: .75rem;
    padding: 0;
    color: var(--vp-tc)
}

.search-pro-clear-button:hover {
    border-radius: 50%;
    background-color: #0000001a
}

.search-pro-close-button {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    display: none;
    margin-inline: .5rem -.5rem;
    padding: .5rem;
    color: var(--grey-darker);
    font-size: 1rem
}

@media (max-width: 719px) {
    .search-pro-close-button {
        display: block
    }
}

.search-pro-input {
    flex: 1;
    width: 0;
    margin: 0;
    padding-block: .25rem;
    padding-inline: 2.5rem 2rem;
    border: 0;
    border: 2px solid var(--vp-tc);
    border-radius: 8px;
    background: var(--vp-bg);
    color: var(--vp-c);
    outline: none;
    font-size: 1.25rem;
    line-height: 2.5;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.search-pro-input::-webkit-search-cancel-button {
    display: none
}

.search-pro-suggestions {
    position: absolute;
    inset: calc(100% + 4px) 0 auto;
    z-index: 20;
    overflow: visible;
    overflow-y: auto;
    max-height: 50vh;
    margin: 0;
    padding: 0;
    border-radius: .5rem;
    background-color: var(--vp-bg);
    box-shadow: 2px 2px 10px 0 var(--card-shadow);
    list-style: none;
    line-height: 1.5
}

.search-pro-suggestion {
    padding: .25rem 1rem;
    border-top: 1px solid var(--vp-brc);
    cursor: pointer
}

.search-pro-suggestion:first-child {
    border-top: none
}

.search-pro-suggestion.active,
.search-pro-suggestion:hover {
    background-color: var(--vp-bglt)
}

.search-pro-auto-complete {
    display: none;
    float: right;
    margin: 0 .5rem;
    padding: 4px;
    border: 1px solid var(--vp-brc);
    border-radius: 4px;
    box-shadow: 1px 1px 4px 0 var(--card-shadow);
    font-size: 12px;
    line-height: 1
}

.search-pro-suggestion.active .search-pro-auto-complete {
    display: block
}

.search-pro-result-wrapper {
    flex-grow: 1;
    overflow-y: auto;
    min-height: 40vh;
    max-height: calc(80vh - 10rem);
    padding: 0 1rem
}

@media (max-width: 719px) {
    .search-pro-result-wrapper {
        min-height: unset;
        max-height: unset
    }
}

.search-pro-result-wrapper.loading,
.search-pro-result-wrapper.empty {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    font-weight: 600;
    font-size: 22px;
    text-align: center
}

.search-pro-hints {
    margin-top: 1rem;
    padding: .75rem .5rem;
    box-shadow: 0 -1px 4px 0 var(--card-shadow);
    line-height: 1
}

.search-pro-hint {
    display: inline-flex;
    align-items: center;
    margin: 0 .5rem
}

.search-pro-hint kbd {
    margin: 0 .5rem;
    padding: 2px;
    border: 1px solid var(--vp-brc);
    border-radius: 4px;
    box-shadow: 1px 1px 4px 0 var(--card-shadow)
}

.search-pro-hint kbd+kbd {
    margin-inline-start: -.25rem
}

.search-pro-hint svg {
    display: block;
    width: 15px;
    height: 15px
}

.block,
.break,
.horizontal,
.image,
.inline-code,
.list-wrapper,
.list-item,
.nested,
.inline-emphasis,
.inline-bold,
.table,
.fence {
    margin: 4px;
    padding: 4px;
    border: 1px solid red
}

.search-pro-result-wrapper {
    scrollbar-color: var(--vp-tc) var(--vp-brc);
    scrollbar-width: thin
}

@media (max-width: 419px) {
    .search-pro-result-wrapper {
        font-size: 14px
    }
}

.search-pro-result-wrapper::-webkit-scrollbar {
    width: 6px;
    height: 6px
}

.search-pro-result-wrapper::-webkit-scrollbar-track-piece {
    border-radius: 6px;
    background: #0000001a
}

.search-pro-result-wrapper::-webkit-scrollbar-thumb {
    border-radius: 6px;
    background: var(--vp-tc)
}

.search-pro-result-wrapper::-webkit-scrollbar-thumb:active {
    background: var(--vp-tcl)
}

.search-pro-result-wrapper mark {
    border-radius: .25em;
    line-height: 1
}

.search-pro-result-list {
    margin: 0;
    padding: 0
}

.search-pro-result-list-item {
    display: block;
    list-style: none
}

.search-pro-result-title {
    position: sticky;
    top: -2px;
    z-index: 10;
    margin: -4px;
    margin-bottom: .25rem;
    padding: 4px;
    background: var(--vp-bg);
    color: var(--vp-tc);
    font-weight: 600;
    font-size: .85em;
    line-height: 2rem;
    text-indent: .5em
}

.search-pro-result-item.active .search-pro-result-title {
    color: var(--vp-tc)
}

.search-pro-result-type {
    display: block;
    width: 1rem;
    height: 1rem;
    margin-inline-start: -.5rem;
    padding: .5rem;
    color: var(--vp-tc)
}

.search-pro-remove-icon {
    border-width: 0;
    background: transparent;
    cursor: pointer;
    box-sizing: content-box;
    height: 1.5rem;
    padding: 0;
    border-radius: 50%;
    color: var(--vp-tc);
    font-size: 1rem
}

.search-pro-remove-icon svg {
    width: 1.5rem;
    height: 1.5rem
}

.search-pro-remove-icon:hover {
    background: #8080804d
}

.search-pro-result-content {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    line-height: 1.5
}

.search-pro-result-content .content-header {
    margin-bottom: .25rem;
    border-bottom: 1px solid var(--vp-brcd);
    font-size: .9em
}

.search-pro-result-item {
    display: flex;
    align-items: center;
    margin: .5rem 0;
    padding: .5rem .75rem;
    border-radius: .25rem;
    background: var(--vp-bgl);
    color: inherit;
    box-shadow: 0 1px 3px 0 var(--card-shadow);
    font-weight: 400;
    white-space: pre-wrap;
    word-wrap: break-word
}

.search-pro-result-item strong {
    color: var(--vp-tc)
}

.search-pro-result-item:hover,
.search-pro-result-item.active {
    background-color: var(--vp-tcl);
    color: var(--white);
    cursor: pointer
}

.search-pro-result-item:hover .search-pro-result-type,
.search-pro-result-item:hover .search-pro-remove-icon,
.search-pro-result-item:hover strong,
.search-pro-result-item.active .search-pro-result-type,
.search-pro-result-item.active .search-pro-remove-icon,
.search-pro-result-item.active strong {
    color: var(--white)
}